Update from upstream

This updates our fork with upstream's changes (reaching back at least 16 months).

This also adds support for the built-in `sum` reduce function in `map_reduce` RSpec unit tests.