Continue working on C++ port
Further work on C++ port