Interface to reductions taking std::vector instead of a bare pointer
Per a complaint for one of Sanjay's students, the
contribute() #API is clunky C style, when a little bit of #C++ can make it more elegant. So, make an overload that takes
std::vector instead of the bare pointer, and determine the count and
sizeof from that.