week2 domain objects

created domain objects and the associated unit tests.