refactored domain to model and event to command
refactored domain to model and event to command