Handle Bitfinex timestamps as BigDecimal instead of float

These changes address issue #726. I changed all the float timestamps into BigDecimal. I also added unit tests covering the changes in BitfinexAdapters.
Since I don't have a working application for accessing Bitfinex' API yet, I wasn't able to test the changes directly against Bitfinex. Therefore, I recommend to test it manually before releasing as stable (e.g. request the orders using BitfinexTradeService.getOpenOrders().get(0).getTimestamp() and see if the timestamp matches to the millisecond Bitfinex' timestamp).

Further, I corrected a unit test that tested on purpose (!) against wrong timestamps. This is a little alarming as correct handling of the time is almost as important as correct handling of money amounts in financial applications.
We recently decided to no include copyright headers. Can you remove it? Also if you ever see it, feel free to clean it out of any file. :)