Move Users#create logic into User model, add reset_location, minor fixes