adding all the final user account functionality