chapter 7 - user model incl. more testing