demo.sh: download / generate bin files if needed
demo.sh: Misc. cleanup
Merge pull request #109 from cmaloney/demo-script-fixes

Demo script update
Make language test runner run tests from multiple directories
Merge pull request #110 from cmaloney/issue-89

Make language test runner run tests from multiple directories
base/stl_utils: Use nullptr
base/stl_utils: Remove outdated Find() function

.at() provided by the STL gives the same semantics.
base/subprocess: Add a WaitForAll which waits for any child process to exit
jhm/naming: Add 'Contains' to TAbsBase
jhm/naming: Add two more convenience functions
base/path_utils: Use free() in GetCwd(), so it matches the malloc that the system uses
path_utils: Use unique_ptr but explicitly specify the deleter to be free()
Move std::swap to use ADL, the preferred method for C++11
base/thrower: Allow hierarchies to be built with DEFINE_ERROR
base/pos: Mark swap() noexcept
jhm/naming: Use std::algorithms more for ends_with per mpark's suggestion
base/demangle: Modernize/rewrite demangler interface
base/stl_utils: Remove unused include
Merge pull request #99 from cmaloney/base_changes

Base changes
base/*_util* -> util/

We had effectively built a namespace within base for things which are just adding more functions to standard objects.

Things like:
 - <base/stl_utils> which adds helper functions for members we wish the STL had
 - <base/string_utils>: Make cstrings more accessible
 - <base/io_utils>: Make reading/writing to fds easier

Things like:
 - <base/fd>: Change linux fds to be RAII don't apply because they're more than just little helper functions that take standardized things