function _reduceStream (stream$, reducer, cb) {

	stream$
		.pipe(reduce(reducer.fn, reducer.memo))
		.once('data', function (reduction) {
			cb(null, reduction);
		})
		.once('error', cb);
}
function _reduceStream (stream$, reducer, cb) {

	stream$
		.pipe(reduce(reducer.fn, reducer.memo))
		.once('data', function (reduction) {
			cb(null, reduction);
		})
		.once('error', cb);
}
function _reduceStream ( stream$ , reducer , cb ) { stream$ . pipe ( reduce ( reducer . fn , reducer . memo ) ) . once ( 'data' , function ( reduction ) { cb ( null , reduction ) ; } ) . once ( 'error' , cb ) ; }
Reduce a stream of data into a single value.

@param  {[type]}   stream$ [description]
@param  {Function} reducer [reducer object]
@param  {Function} cb      [description]
@return {[type]}           [description]
Reduce a stream of data into a single value .