SERVER-10741 remove outputNs from return object when using $out
SERVER-9238 Don't set a timeout in shell autocomplete

In V8, timeouts are fatal so the shell would become unusable if the
timeout fired. Since the timeout didn't cause remote calls to return
early (which is the most common cause of slow autocomplete), this didn't
actually do anything useful anyway.
Remove fake split-pipeline mode from aggregation

It was a bad idea and is only used by the disabled test for explain.
When complete, the explain test will use an actual sharded cluster
rather than a fake one.
Remove Pipeline::collectionName and getter.

It is replaced by ExpressionContext::ns.
SERVER-4504 explain for aggregation

This is just the infrastucture change. Each DocumentSource will need to
have it's serialize()/serializeToArray() implementation examined and
improved.

Related tickets:
SERVER-6140 A specific failure in the old impl of explain.
SERVER-4504 Improve DocumentSourceCursor explain

Running an explain on a new query through DBDirectClient is just wrong
here. It needs to describe the actual cursor created by agg rather than
the cursor that would be used in a similar find.