FC-69 Replace Remote Call with @Retryable and new Continuation implementation

Remote calls used SQS to distribute execution of command and query methods, as well as enable retrying of failed commands/queries. This causes subtle issues with failure scenarios, and problems with method call or response serialisation.
Remote calls have been replaced with equivalent functionality that does not use messaging (SQS). This change introduces new annotations, @Retryable @DeferResult and @ContinueResult. These support retries and continuations.

Signed-off-by: Steffan Westcott <steffan.westcott@clicktravel.com>
This can only be done when the existing blue-green deployment scripts have been updated. The change as implemented here does not break the existing scripts, and allow us to update them to use the new property name.