split user model into separate file