Personalization

@Berdir asked specifically to review this branch, please leave the merging to him.
Yes, but why no longer let upcasting load the user by having he type hint? The name needs to match the route slug/placeholder.