Split Options Config into different datatypes

The `RetconConfig` is now parameterized by the type of Entity. This
allows it to reside in `Retcon.Options`. This also enables the
Initialisation to be done at a later stage tan the creation of the Config.
I'd prefer to avoid these magical wrappers if it's simply a viewing of the local state. Happy to leave this for another day, though.