SD-672 back-end support for user preferences

Added schema for user preferences regarding user mentions notification + behave test
@petrjasek  I made the changes concerning 'datasource' but it looks a little strange to me. Indeed, when I get preferences it is as you mentioned (/preferences/user-id) but on the other hand, if I create a preference and then I get users (/users) it looks like I also created another user but this new user doesn't have all the attributes it has to have.
In order to keep your idea and not to disturb 'users' resource I thought I could have UserPreferencesModel having  datasource: {'source': 'users', 'projection': {'preferences': 1}} and a new href like: 'users/<regex("[a-f0-9]{24}"):user_id>/preferences'.
What do you think?