SERVER-7965 Make the timestamp format settable in servers.

From the command line or config file, --logTimestampFormat=(ctime|iso8601-utc|iso8601-local).

The beginning of the Unix Epoch is formatted as follows in the three formats,
assuming America/New_York for the time zone.

  ctime:         Wed Dec 31 19:00:00.000
  iso8601-utc:   1970-01-01T00:00:00.000Z
  iso8601-local: 1969-12-31T19:00:00.000+0500

The default remains the same as in prior versions, "ctime".
SERVER-1891 Add hooks to audit authentications using MONGODB-CR and MONGODB-X509.
SERVER-10351 Log authentication failures for MONGODB-* in the diagnostic log.
SERVER-10343 Fix $regex query when given both a RegEx and options.

MatchExpressionParser::_parseRegexDocument() now makes use of options embedded
in a provided RegEx.

Signed-off-by: Ian Whalen <ian.whalen@gmail.com>
SERVER-10334 mongos command results also return mongod node targeted in shard
SERVER-10298 SERVER-10277: add tests and cleanup code to match for update replacements
SERVER-10296 Allow $unset and $rename to act on invalid names
SERVER-2212 Misc. comments, formatting
SERVER-2212 Add CurOp public method elapsedMicros()
SERVER-2212 Ability for CurOp objects to be "timer-interruptible"

- New public methods introduced to CurOp for requesting op
  interruption after a given time period.
- KillCurrentOp objects now additionally tasked with interrupting
  CurOp objects that have exceeded their time limit, during the
  "interrupt check".
SERVER-2212 Logic to apply time limits to getmore CurOp objects

If a CurOp object generating a cursor has a time limit imposed,
remaining time is "rolled over" to the ClientCursor object, and
applied to later getmore ops.  Affects getmore ops on cursors
associated with both normal queries and cursor-enabled aggregation
commands.
SERVER-2212 Add mongod query option $maxTimeMS, shell helper

$maxTimeMS can be added as a top-level field to any query or
command ($cmd.sys.* ops not included).  Requests op interruption
after the user-given time limit.
SERVER-963 Split and externalize Linux packages

This includes splitting rpm and .deb packages into sub-packages and
externalizing the spec and control files to be maintained as static
files.
SERVER-3253 Unsharded $out
ExpressionContext now has the input namespace

This reduces the amount of PipelineD injection and will make sharded
$out easier (SERVER-10097).
SERVER-8598 replace trySetVersion with epoch-safe refresh behavior