Users can now update their information

Updated language strings

Created UserObserver class to clean up User model

Added updateRules array and validateUpdate method to BaseModel

Updated relevant views