An exercise in implementing Domain Driven Design with PHP