Merged requested to merge kotlin-piecemeal into develop
Adds support for kotlin as the basis for our rest-models and rest-entities. Also splits the models and entities into different packages so that they are not as heavy when used as dependencies (if we don't need db support, we no longer pull in db related libraries).
Unfortunately since these sit at the foundation of the project everything is affected which caused this to be very large. glhf reviewing.