An implementation of the Domain Events design pattern for Laravel