added most of the functionality for a save, however due to validations forced to set up some basic user finctionality