re did my domain model with some additions