SERVER-14079: Add signal handlers to shell

The shell currently lacks the signal handlers that mongod/mongos
have making it tough to investigate issues.

This change does the following
1. Add signal handlers to shell & tools.
2. Add invalid_parameter handler for Windows
3. Add better logging for pure call handler on Windows
4. Take dumps on terminate handler on Windows
5. Change shell to use common signal handlers
6. Remove some random dead code / commented lines.
SERVER-9985: chown dirs created by upstart's pre-start stanza

Usually these are created by the the post-install script that runs after installing the package, but if those were rm'ed later on and then created by this script, their permission would be most likely set to root, causing mongod to fail starting.

Signed-off-by: Ernie Hershey <ernie.hershey@mongodb.com>
SERVER-9985 Adjust pre-script mkdir commands in upstart config
SERVER-13460 disable DurParanoid during JS scripting engine logging tests
SERVER-14138 mongos incorrectly targets multiple shards for nested field shard keys
SERVER-14032 verify _id present for upserts to multiple config servers
SERVER-14176 query planner should obey $natural sort
SERVER-13681: Remove lock that was an incorrect workaround for Azure Drive write size limitations.

- Limit flushes to 2MB chunks to prevent hitting a limitation in
Azure Network Drives (XDrive) which have a 2MB file write size limitation.
SERVER-13729: Fix Data File Growth on Windows

Reuse an existing lock to use as a lock to handle the race condition
between _flushAll, and the memory mapped file being closed instead
of holding LockMongoFilesxxx for an excessively long time.
Merge remote-tracking branch 'upstream/master'