31 create entity base class (resolves #31)

Create a base entity superclass, called "TrackedEntity", which includes all the logic related to the "id"s attributes, the "modified", "created" and "deleted" lifecycle-related attributes, and the "Timestampable" and "SoftDeleteable" Doctrine extensions. Then refactor all entity classes to make them inherit from this "TrackedEntity" base class and move the common logic up to that superclass.
Resolves #31.

@Zboubidoo, even though we don't agree yet on the superclass' name, could you take a look at this? If we decide to change the name I can easily amend the commits. Note that the database doesn't have to be altered.