can.reduce as a util function

I've added can.reduce and can.reduceRight to wrap their respective ES5 Array prototype functions when they exist, and supply the same functionality when they do not (IE8, or iterating over objects like can.each does).  I've been just gnashing my teeth lately over the lack of universal fold/reduce in my every day life.