Fix race in controller/invoker active ack.

Add a trait to generate activation ids. This can be mixed into tests to have fixed ids where necessary.
Use custom activation id generator for testing blocking invokes.
Lift listener for active ack responses in action activations before the post to loadbalancer - this avoids a race where the response comes back before the listener becomes active.
Add unit test for active ack/fast path.

Also in this commit, removing deadcode:
- No longer using direct invoke API in tests.
- Load balancer requests are no longer happening over HTTP.

Fixes #1067.

Consolidate active ack/db poll promise completion in the Actions API handler.
Simplify the active ack timeout logic to that it is clearer what is happening.
Factored out timeout on active ack so that caller can decide how long it wants to wait for.

Signed off by Markus Thoemmes <markus.thoemmes@de.ibm.com>
4 files changed