settings page - added username check

When a user asks for a new username, both front and back check the availability and tell the user about it in the UI. If the username isn't available, changes aren't saved.