added domain events related classes