Added support for user-defined (non-system) nullable types in data contracts

In order to allow, e.g. nullable custom enum fields in Commands, Domain
Events and DTOs.
Updated changelog