basic user model - needs work