Merge pull request #137 from sortega/feature/bump_bitcoinj

Bump bitcoinj to 0.11.1 and remove workarounds
Make order book to have multiple orders per requester

Also, split it into OrderBook and OrderMap and decouple it from
exchange id generation.
Merge pull request #140 from sortega/feature/order_book

Make order book to have multiple orders per requester
Update version of Scala and dependencies
Enable another acceptance test
Merge pull request #142 from edrevo/general-update

Update version of Scala and dependencies
Merge pull request #143 from edrevo/enable-acceptance-test

Enable another acceptance test
Provide a type-safe replacement for `BtcAmount` and `FiatAmount`

As reported in issue #141, class `FiatAmount` is not as robust as it
could be. The instances of different currencies share the same class,
what requires continuous checks to verify we are not mixing different
currencies inappropriately.

This change proposes a new replacement for `FiatAmount` and `BtcAmount`
which uses a type-safe mechanism that makes impossible to mix amounts
of different currencies.
Merge pull request #144 from apoloval/issue/141

Provide a type-safe replacement for `BtcAmount` and `FiatAmount`
Use OrderSet instead of Order as protocol message

Orders should be sent as a complete set to simplify the consensus of
the broker set. This means that `Order` is no longer a protocol message.
Consequently, modify actors to use `OrderSet` instead of `Order`.

Also, remove `OrderCancellation` message. The way to cancel an order is to send a new order set without that given order.

And finally, the introduction of `OrderSet` triggered a redesign of the `Position` class, that become templated (e.g. `Position[Bid.type]`), allowing the removal of several runtime checks in `OrderBook` and `OrderMap`.
Merge pull request #145 from sortega/feature/orders

Use OrderSet instead of Order as protocol message
Add integration testing for open orders
Merge pull request #147 from sortega/feature/146_orders

Add integration testing for open orders
Introduce OrderSet.addOrder
Make OrderSubmissionActor manage a set of orders
Enable integration test
Feedback changes
Introduce ProtocolConstants.orderResubmitInterval
Send orders to the broker grouped by market
Merge pull request #148 from sortega/feature/146_orders

Feature/146 orders