SERVER-14800 Replace some masserts with invariant calls in locking
SERVER-14788 Do not start threads in ReplicationExecutor's constructor.

By not starting threads in the ReplicationExecutor constructor, we can safely construct
it when constructing the ReplicationCoordinatorImpl that owns it, which allows us to
get rid of the weird behavior where we pass a NetworkInterface* to startReplication(),
and further allows us to clean up the concurrency rules for startReplication().
SERVER-14788 Make ReplicationCoordinatorImpl::startReplication threadsafe.

To follow the contract described in the header, it shouldn't be mutating pointers
to its top coord and repl executor, or changing its RID, so do that in the constructor,
instead.  This makes the parameters to startReplication sane, as a side benefit.
SERVER-14044 Invalid {$meta: 'text'} reference in agg $sort error message

Closes #737

Signed-off-by: Benety Goh <benety@mongodb.com>
SERVER-14165 port isSelf fastpath to windows

Closes #736

Signed-off-by: Benety Goh <benety@mongodb.com>
SERVER-14836 SSL certificate expiration date in db.serverStatus()

Closes #738

Signed-off-by: Benety Goh <benety@mongodb.com>
SERVER-14718 index negations below elemMatch value
SERVER-8752 Add config.actionlog

Closes #739

Signed-off-by: Benety Goh <benety@mongodb.com>
SERVER-14165 reenable isself fastpath for OSX

Closes #736

Signed-off-by: Benety Goh <benety@mongodb.com>
SERVER-14788 Wire initial configuration loading into startReplication.

via Andy Schwerin.
SERVER-7285 Add mongod.service file for Linux

Add a systemd .service file. This is used in place of System V init scripts on most current Linux distributions.

Closes #740

Signed-off-by: Benety Goh <benety@mongodb.com>
SERVER-14857 prevent stepdown.js from failing when grabbing the wrong master during shutdown
SERVER-14497 UpdateStage