Retry services discovery if it fails.
Split signature generation into a static method so it can be used from Editor tools.
Runtime exception if there is no Carrot App Id configured.
Allow validation of Carrot settings via editor panel.