Cpp dev

initial dev of building with C++ and taking advantage of the standard library where possible