Put underscore in factory parameter classes.
Calculate the first parameter in the factory correct.
Removed birthday from the chained creator (not mandatory).
Replaced ValidationErrors.isEmpty and hasErrors with isValid and isInvalid.
Renamed annotation from @ImmutableType to @Value. Removed "birthday" from the Person chained constructor. Introduced ValueConverter and HairColorStateValue.
Changed the order of addError parameters in ValidationErrors.
Implemented isRedHaired().
Changed method name from isImmutableObject to isImmutableType.
Implemented support for all types except Map in the factory.
Added support for Map's in the factory.
Partially implemented #constructor(), #asState(), #asMutableState() and #withMethods() in creator.java.laja.