Quit with an error if cluster_settings or remote_cluster_settings are in...

...valid

Fixes https://github.com/Metaswitch/cpp-common/issues/171. Tested by:

* making sure Sprout can start up normally
* creating a blank remote_cluster_settings, restarting Sprout and checking for an error log
* blanking out cluster_settings, restarting Sprout and checking for an error log
* blanking out cluster_settings, SIGHUPing Sprout and checking for an error log
Why have you needed to add in the new mstore? Can't you just use the existing local_data_store/remote_data_store?