The reason for isolating the trader class is testability. It's hard to
properly test code with as much global state as files in `lib/api` had.
With a `Trader` class we can easily instantiate multiple objects, with
different configs, without the need for seeding the database with test
configs, effectively enabling us to do unit tests as well as integration
tests.
Besides that, this will allow easier reconfiguration, thanks to
`Trader#configure` method.