Reworked Configuration API to improve tyfe safety when working with Settings and Configurations. Introduced mechanism for collecting public static final Setting-typed fields in Configurables and Configurations annotated with Configurable.@Option. In this manner, the framework can discover at runtime the declared type of the particular Settings using the type introspection facilities of the java.lang.Class type together with the java.lang.reflection.Type class family. Updated CustomizableConfiguration to use this new mechanism. Added additional ObjectFactory implementations to deal with marshaling/unmarshaling of built-in classes (all java.lang.Number implementations, java.lang.Boolean, java.util.UUID, javax.xml.namespace.QName). Added more reflection-based  type introspection utilities in org.ldp4j.application.util.