added decent error for #153
Fix rounding error for GHS trading on CEX.io

We were rounding the GHS amout to sell up, which caused some trades
to fail because of insufficient funds.
Fix minor issues which can cause the trader to halt
Add support for trading

New trader actor that acts on trading advice and triggers the appropriate
actions using the portfolioManager.
Fix issue with callbacks in portfolioManager

There's cases where a callback can be missing to one of the
calls in the portfolioManager which caused an error (and halting the
trader). Added a check if we actually had a callback before triggering
it which keeps things running smoothly.
Fix nonce issue on cex.io

When trading on cex.io I occasionally got an error from the cex.io
module saying that the nonce had not incremented. The nonce in the cex.io
module is the unix timestamp (in seconds not milliseconds) which means
that the cancel and buy/sell order were both triggered in the same second.

Adding a 1s delay to the trade fixes this issue and also means we're
playing a little bit nicer with the apis of the exchanges.
Fix retry method of getPortfolio on the cex.io exchange
Log the name of the method that is retrying

In order to do this I needed to make some functions non-anonymous.
Looks a bit awkward, but is useful for debugging purposes.