Implement dynamic routing system

Currently there is a lot of repetition in the code of the Models and Routes.
Steps to tackle this:
- [x] Create dynamic routing for the API
- [ ] Create REST-Client for the Frontend, which will do all work
- [x] Implement better error messages
- [x] Create Controller, which handles errors & response of all Models
- [x] Implement CRUD Utility, to shorten code of Models

**CRUD**
See [sequelize-restful](https://github.com/sequelize/sequelize-restful/blob/master/lib/router.js#L189) for basic auto-associate. Investigate a way to automate this.

**Controller**
Inspiration: [Locomotive-Controller Class](https://github.com/jaredhanson/locomotive/blob/master/lib/controller.js)

- ``controller.error( err )`` to handle errors of Models
- ``controller.render( data )`` to handle response
- ``controller.before( promise )`` invoke a function before every request ( e.g ``auth`` )