refactoring User related specs and code based on feedback from David and Calvin