Add StringData::rfind(char) const method.
SERVER-8952 Add argument type checking to Timestamp constructor in Javascript shell
Get rid of "args" global in V8
Attach V8Scope to v8::Isolate's Data

Frees the accessor data up for other uses
Cache conversion of string literals to V8 Strings
Add V8String class to avoid copying v8::Strings into std::strings

Still need to copy once into v8::Utf8Value but this saves the second copy
Remove post-install dependency on murmurhash3 from client
SERVER-9605 Use correct string length in hexToBinData()

Do not use hard-coded length of 16 to process variable length hex string.
SERVER-9597: In JavaScript, only allow Mongo() to be called as a constructor
Make "bare assert" check more selective

Do not trigger "bare assert" error when " assert(" appears in a
quoted string, as it does in src/mongo/shell/mongo.cpp for example
(as generated by the Visual Studio build).
SERVER-9878 Add type checks to V8 C++ bindings

The main focus of this ticket is tightening up input validation in
our V8 bindings. Doing this required normalizing the way we create
custom types in JS that have special C++-driven behavior. All special
types now use FunctionTemplates that are attached to the V8Scope object.
This allows us to test if an object is of the correct type before using
it.

Other related tickets partially addressed:
SERVER-8961 Differences in argument validation of custom types between v8 and Spidermonkey
SERVER-9803 Handle regular expression parse errors without seg faulting

Conflicts:

	jstests/constructors.js
	src/mongo/scripting/engine_v8.cpp
SERVER-9804 add numeric code to getLastError error when primary steps down
SERVER-9796 FTSSpec::fixSpec() should not re-order _fts* fields
SERVER-5442: use journal commit instead of fsync command for config server writes
SERVER-5442: need to resetError before doing the prepare
SERVER-9283 lastHeartbeatRecv flaps between invalid and valid dates during replicaset initilization

Do not overwrite lastHeartbeatRecv with 0 value everytime HeartbeatInfo gets updated.
SERVER-9824 Retry hash table grow operation on excessive collisions

Be defensive against excessively long hash chains in a resized table in
UnorderedFastKeyTable::_grow().  Retry growing the table up to 5 times
before declaring failure (as we do when inserting into a table).  Reduce
the maximum retry count for table insertions from 10 to 5, since growing
the table by a factor of 32 (2**5) guarantees that no hash chain can be
as long as 5% (1/20, the default _maxProbeRatio) of the new table size.
SERVER-9824 Whitespace -- CRLF to newline
SERVER-9824 Add jstest
SERVER-9856 check in-progress indexes for duplicates in prepareToBuildIndex()