Support init-val for reducing subscribers

New arities for all reducing-subscriber-creation fns that support an `init-val` arg. Where the old behavior was comparable to `reduce` with two args,
```
(reduce + [1 2 3])
```
the new behavior is comparable to `reduce` with three args.
```
(reduce calc-stats {:count 0 :sum 0 :max 0} [1 2 3])
```
This is useful in cases where the data being reduced to has a different shape than the incoming messages.