I have to implement a Laravel application where many different types of "service" are handled. Different services may have different data. Different services have mostly all the same functionalities: have statuses, trigger notifications, and more in general are related to the same types of other entities (users, clients,