Remove a pointless static bool
Remove an exception not used for anything useful
Actually load the platform config rather than the default config twice
Change the in-memory storage of options to a sorted vector
Rewrite the remaining bits of json::Writer
Make UnknownElement moveable and not copyable

And remove the unused comparison functionality.
Fix failing path tests on OS X