Basic API stuff

Migrations, models, controllers, user auth and oAuth API protection. A lot of tests.