An example implementation of Enumeration.
Each Enumeration is implemented as a series of case objects extending a base abstract class, that itself extends Enumeration.
A simple example runner, demonstrating how to serialize and deserialize objects with Enumerations.