Creating Classes for each Type

The abstract class Type implements the interface TypeInterface and
provides as a base for all value-types that will be created. The methods
checkValue() and correctValue have to be defined for each value-type as
they cannot be generalised.