C++ Improvements

Hopefully these changes won't be too controversial:

* Removed the assumed naming conventions
* Removed the assumed virtual destructors
* cl to class (seems more intuitive)
* Added std iterator for-loop snippets
* Added member function implementation snippet