Tidied the domain model up, added multiplicities.