Fix heisenbug at OrdersActorTest
Merge pull request #150 from sortega/bugfix/heisenbug

Fix heisenbug at OrdersActorTest
Provide a more convenient interface to `Currency` classes

* Move operators from `Currency#Amount` into `CurrencyAmount` trait.
That makes possible to use such operators with the more abstract
type if needed.
* Add convenience `apply()` functions to `Currency` trait to instantiate
amounts in a less verbose way.
* Add a marking trait `FiatCurrency` to deal with fiat currencies.
The Java representation is moved exclusively for instances of this
trait.
* Add a `FiatCurrency.apply()` function to obtain a currency from a
`java.util.Currency` instance.
* Add utility functions to `Currency.Bitcoin` to convert from/to
Satoshi amounts.
Partial replacement of `BtcAmount` and `FiatAmount` by `CurrencyAmount`

In some parts of the codebase, the usage of `BtcAmount` and `FiatAmount`
is replaced by generic class `CurrencyAmount`.
Addressing feedback from PR #151
Merge pull request #151 from apoloval/issue/141

Partial replacement of `BtcAmount` and `FiatAmount` by `CurrencyAmount`
Shorten some currency amount expressions

Using implicit conversion via `BTC` or `EUR` instead of invoking
`Currency.Bitcoin.apply()` and friends.
Merge pull request #153 from apoloval/issue/141

Shorten some currency amount expressions
Split PeerActor interface and implementation

To avoid cyclic dependencies with collaborator objects.
Make OrderSet handle merge amounts ordered at the same price

Introduce VolumeByPrice class to represent order volume as a map from
prices to volumes.
Implement order cancellation
Enable IT about order cancellation
Merge pull request #154 from sortega/feature/cancel_orders

Implement order cancellation