Pluggability

1. Make configs pluggable
2. Make back ends pluggable
3. Make spicedham a class


@willkg r?
How can the user specify what the first config will be? Maybe we could put that in a config... oh wait.
Maybe I could call `sorted` on that list and select the first one so it will be a bit more deterministic?