editted definitions
Implement editProfile functionality

refactor definitions as well.