ISIS-488: facet factory for JDO @Column annotation

- MandatoryDerivedFromJdoColumnAnnotationFacetFactory
- refactored the MandatoryFacetAbstract hierarchy
- check for incompatibilities between Isis' and JDO's default treatments of nullable fields.
- new @Mandatory annotation
- fixes to Isis provided JDO entities (PublishedEvent, ApplicationSettingJdo, UserSettingJdo).

Also:
- trivial refactorings to BigDecimalDerivedFromJdoColumnAnnotationFacetFactory (from whence cloned)
- fix to LayoutMetadataJsonReader unit test