user update extends user object
moved lib out