Profiles: change username, check username/email uniqueness

Added the ability for users to change their username from their profile
page. Also added a created three pre methods for users that gets the
user info for the logged in user, checks if the username received on
update is a new username and if it is unique, and the same check for
emails.

All three pre methods were added to the POST /profiles route config.