further changes to bucket slicing / grouping in order to harmonise API between 'reducing' where the collection point is able to generate its own events (e.g. an instance of MFunc). i.e. unify 'Bucket', 'Agg' and 'Reduce'

The objective is to be able to 'group' any streams that have some sort of reset semantics, and use similar concepts for reductions of any streams. The reduction approach allows 'binding' to other streams, which solves the problem of how to express a stream join-reduce (which is different from just yielding tuples like a 'zip')
all current bucketStream tests working now
All bucket stream tests passing.
Main bucketing API now covered by tests.
Still got a load of NODEPLOY, some renames.
Then I need to add symmertry to the Vector  bucketing API