creating domain objects Fixes #3