implementation of minttrader. includes lots of abastraction of data providers.