Feature/mongo 2.6.5 document source pipeline

There are still a few failing test cases in this branch (1 - "should swap $match and $sort", 2 - "#_runSync should catch parse errors", 3 - "#_runSync should call callback with errors from pipeline components").  Also, untested are the shard-related methods.

I'm submitting this to get a few more eyes on it, if possible, while I continue on it.  I plan to begin by addressing the 3rd failing test case.  I am hoping that the merge of SortDocumentSource might address the 1st.  If anyone has knowledge of the async vs sync part of pipeline's run() function, maybe the 2nd one can be fixed too.