User names are sluggifiable

Wasted some time on the backend, apparently `getById` already works on slugs as well, so there's that.

Users now have unique slugs. Anonymous users don't have slugs, and in case of collision will be forced a new derived name upon signup, silently. 

Don't merge this yet of course, we still have to see what the current state of affairs is.
TODO:

 - Check for slug collision upon name change. Silently change anonymous names.

This Pull Request serves mostly as a place of open discussion and should give you the opportunity to check out the code as it is now.