Import internal commit de0473a297248668b55a3385ba5eda7b73184ff3 : [APPROVAL] pending/master/restore_non_standard_bsl_hash_for_strings_drqs37540921 to master
Import internal commit 49a9b029b9417d6b4bfe8ff366c554d82e4fb7d8 : [APPROVAL] pending/master/bslalg_autoarray-move-destructor-usage-drqs-34554786 to master
Merge branch 'import' into import-test
Re-generate gyp files
Merge branch 'upstream-master' into import-test
Increase timeout to see how long bsl_hashtable.t takes to complete
Add support for running test drivers inside Valgrind.

This patch adds a '--valgrind' command line option to run_unit_tests.py. The option
accepts an argument which is a filename *pattern*. When this option is supplied,
each test case will be executed inside a Valgrind wrapper with the leak-check tool
enabled, and Valgrind's output will be directed (in XML format) to a file specified
by that pattern. The pattern will undergo string substitution with a single parameter,
which will be the test case number that is being executed (so the pattern should use
a "%d"-style format string to format it).
Correct some misspelled function names.
Add a 'Profile' configuration and code coverage tools.

This patch adds a 'Profile' configuration to common.gypi, and when the build
is done using GCC, adds specific compiler and linker flags to cause the library
and test drivers to be instrumented for profiling (and code coverage). In addition
it adds the 'tools/bsl_coverage' script which constructs a Makefile that uses 'lcov'
to gather and aggregate code coverage information, and it adds the 'lcov_cobertura'
tool which converts the lcov-style output into Cobertura-style output.
Revert "Disable profile/code coverage until tools are merged."

This reverts commit 25d61940a3a8bd8d1fae085081ae1c15aa96fa33.