checks to see if user exists; creates if it doesnt