!str step 1: add impl part that compiles
!str Add tests
!str rename SPI/TCK to org.reactivestreams
!str rename mapSeq to mapConcat
!str add ScriptTest and apply it to mapConcat
!str add test for Filter and Map
!str add test for Grouped
!str add Drop
!str clean up test output and ActorProcessorImpl

- intercept messages which are expected
- log failures encountered in ActorProcessorImpl in addition to sending
  them downstream
- remove the need to control reentrancy of pump() by only calling it
  from Receive blocks

@drewhk: you might want to take a look at this commit
!str make transform() onComplete work
!str add fold
!str make Grouped test more thorough
!str add Foreach
!str add transform’s isComplete and use it for Take
!str reorganize and implement consume()

StreamImpl.scala grew too big, so I split it up into producer, consumer,
processor, messages and processor generator files. Also unified the way
processors and consumers are created (ActorConsumer.props,
ActorProcessor.props).

Implement toFuture based on transformRecover and consume.
!str add ActorProducer and fix FanOutBox

The ActorProducer is an actor-based Publisher which runs a thunk of code
until Stop is thrown. This means that completion is only signaled if
demand is present for one more element, which makes sense and it legal
according to the wording of the spec. The TCK was too strict in this
regard and has been relaxed.

Things would have “worked” without the relaxation if I had not also
fixed the output buffer management. SubscriptionManagement in
collaboration with the ResizableMultiReaderRingBuffer previously
generated demand on its own, acting like a true buffer. This is
undesired since we want to auto-tune the input buffers, which would get
a lot more complicated and instable with autonomously buffering output
stages in the mix.

Removing this extra-buffering uncovered several places in the test suite
which implicitly relied on this, which were fixed as well.
!str fix small review comments
!str Add Stream from Iterator and Iterable

* actor based producer for iterator
* actor based producer for iterable
* remove old IteratorProducer and StrictProducer
!str Improve ActorPublisher

* proper order of processing subscriptions
* exception passing on error for new subscribers
!str Specify publisherShutdownTimeoutMillis