Database manager

@isupeene Working Database manager that is tested. Still needs contracts.

Note: Need to run database_clear.sql and then database_setup.sql on our DB before submitting.
OK - it's a little weird that you create new tables in this function...