massive change to the database

- added events
- merged all transactions into transaction.py. Transactions now have
  both virtual and cash to/from accounts.
- changed datalayer and views to use the new tables
- changed imports a little so that everything isnt import *
- hopefully decimals at least run everywhere, even if they dont always
  look good

TODO
----

- clean up admin index
- display events instead of transactions in backend
- add pages for donations, withdraw, btc reconcile
- moar testing