Improve memory handling code

This code is slightly less horribly leaky.
Improve memory handling

Further improvements to memory handling code.
Move to slightly more adult C++
Use std::vector to handle memory allocation

Use decent RAII pattern to avoid handling memory insofar as is possible.
Improve C++ in package

Here is a miscellaneous collection of changes to begin to convert gbm to
adult C++.  This is far from complete, but is a start.
Improve C++ code
C++ improvements

Part of the ongoing process of C++ tidies.
Remove unnecessary tests

C++ FAQ lite 16.6
Further C++ updates
Merge pull request #6 from pdmetcalfe/c++-sanitize

Some C++ changes