Useless commit before mv.
Moves the configuration into separate package.
Adds a lot of the fluent configuration.

- Adds context sensitive fluent config.
- Neglects validation, as well as extensions.