Renamed Entity and ValueObject to IEntity and IValueObject
Regions are cool, let's use them!
Moved all specifications to their own files
Created new value object TheatreId
Added value object SeatId