DB Migrations, merged from #94 and #87

Combines #87 and #94

Took #87's framework and #94's migrations.