A lot of functionality

ready for a trader to run