Significant refactoring towards:
- Schema interfaces and implementations live in Core.
- Configuration stuff in NuPattern has no implementation at all.
- Implementations of "schema configurators" is dynamically discovered through the component context.
- Automation types do no longer live in the library, but in Core (it's a fairly stable part of the runtime, even if it is in principle and design extensible).
Decoupled schema and configuration processing from configuration classes.
Moved schema interfaces to Core, since these are writtable versions of the public Info interfaces and we may not need to make them public at all.
Created binding configuration which is capable of resolving bindings to their runtime counterparts.
Added rich annotation support throughout the various models, #37.
Added support for configuring built-in automation in a decoupled way, with implementation living in Core while configuration classes live in NuPattern, issue #38