adding authentication, building the edit form, building profile