Significant refactoring and stats and export.

After refactoring, goal is now to get some basic statistics working and
export to csv
Increased test Coverage, Currency work

Introduced Currency enum. Need to factor in conversion to USD for all
stats
Additional unit tests