Moving into C++ structuring

version .05

c++ restructure, general fixes
Merge remote-tracking branch 'origin/working'