added domain object superclass and corresponding setters and getters, adapted subclasses