Refactored the Composable/Stream/Promise chain to separate the publishing of values from the consumption of values. This was done by introducing a Deferred class, from which Promises or Streams can be created. The Deferred is the object with the accept() methods on it, making it essential that code that needs to publish values into a Stream or Promise maintain a reference to this Deferred. The code is then free to return the Stream or Promise to the caller by calling Deferred.compose(). The Future class was eliminated in favor of await() and get() methods on the Promise class itself. Base functionality like map() and filter() are provided by the abstract Composable class while more specialized functionality like reduce(), first(), last(), batch(), onSuccess(), onFailure() and others are provided on the Stream or Promise class as appropriate.
Tweak to valueAccepted to recognize the first element of a batch.
Cascade errors, add value, error, supplier helpers for Deferred.PromiseSpec, added test for catching errors downstream.
meaningless hasBlocker
fix some tests
Fix reduce vs batching and tests
copyright
add reduce()
composable parent
remove supplier iface from Composable and rename get to resolve()
solve more tests
add cursor support helper to snapshot a volatile value from Stream
Significant updates, bug fixes, javadoc on Stream, Promise, and their tests.

- Refined the separation of producer and consumer around Deferred, Stream, and Promise.
- Removed some methods from Reactor that involved a "map" function between a Reactor and a Stream. The implementation as it was didn't account for the common uses of Reactor where no replyTo is set on the Event so the "map" operation would never complete. This functionality should be implemented in an EventStream class whose job it is to make sure that events can be propagated through a stream in a fashion similar to the FSM implementation.
- Fixed Stream tests to reflect recent API changes.
- Got halfway through the Promise tests, changing them to reflect recent API changes.
Sync dispatcher between Stream/Promise downstream components, fix benchmark tests
More tests fixed
fix Promise Specs (comment when/merge for now)
comment groovy module for snapshot build
Temporarily remove reactor-groovy from settings.gradle
Javadoc reactor.convert package in reactor-core

Add missing javadoc to the types in reactor.convert.

During this work, a bug was found in ConstructorParameterConverter.
When performing the conversion it was incorrectly looking for a
constructor on the source type, rather than on the target. This has
been corrected and a few unit tests have been added to verify the
behaviour.
Javadoc reactor.core.configuration package
Javadoc reactor.core.dynamic in reactor-core
Further improve reactor.core.dynamic's javadoc

Describe the expected number and type of method arguments for on and
notify methods.
Javadoc reactor.core.dynamic.annotation