Change id generation a littlebit so it makes more sense. Also, bass the backend to the model validation layer for creating new ids.

We might actually move this out in the future
Merge branch 'master' of github.com:numan/sunspear