Refactoring of the User class, extensions to the Update function