Add profile edit functionality

* A profile can now be edited by the user
* A bug currently exists where the user cannot modiy itself however, the
  user is updated but the facebook credentials will later try to create
  a new user, which will then fail because of the providerID being the
  same but the username/name will not be.