@jakel#0001 I still think support for native tokens is too tricky to handle if our contracts are going to be multi-chain. 

We need to know canonical wrappers for native tokens on every chain (just like there is a canonical WETH contract on Ethereum mainnet). 

Why? -- I added the logic to support native tokens, directly transferring native token (e.g. ether) is already showing discrepancies in balances. These discrepancies are very small (the 18th decimal of an account's balance in wei). Wrapping and unwrapping ether as WETH avoids this.

E.g. I ran the `offerAuctionListing` test with native token as currency. The main action in the test: Bidder bids 

