Allow service to tell us why it's misconfigured.

During registration the service will now be given a chance to parse the
config it just gave us. This is so that if a service ships with a config
that requires changes it will come up as misconfigured in the UI. The
yara service is a great example of this as it requires signatures to work,
but does not provide any of it's own.

While here, remove a bunch of old stuff that is no longer used and fix a
bug with _get_config_error not using parse_config.