Map/reduce specs with options

This adds a ```view_spec.should map_reduce(docs).to(results)``` RSpec matcher to support specs covering the whole map/reduce/rereduce process with couchdb's ```group``` and ```group_level``` options. This is most useful for more complex views that are used with different grouping options in different parts of an app, and where the view's behavior is easier to specify in terms of input and final output instead of breaking up the map and reduce stages' behavior.