Add profile editing

https://trello.com/c/yGx4QPu3/6-create-form-to-edit-user-s-profile
@psmir add spec for invalid values, and spec that data was changed.