Ensure users can always see themselves

A user should be allowed to perform all actions on themselves. If they do not make sense (friending, sending messages) we prevent this on the permissions level.

Including a functional test