SERVER-15778 Fix ClientCursor "noTimeout" counter reporting error

The "noTimeout" counter was never being decremented for no-timeout
cursors that were cleaned up when pinned.
SERVER-15778 Clean up ClientCursor

- Removes ClientCursor::_pinValue and corresponding public methods.
- Adds ClientCursor::_isPinned and ClientCursor::_isNoTimeout and
  corresponding public methods.
- "isAggCursor" is now an immutable property of a ClientCursor.
- It is now an error to destroy a pinned ClientCursor before unpinning
  (and, visibility of ~ClientCursor() changed to private to help
  enforce this).
Merge remote-tracking branch 'upstream/master'