Added first phase of C++ code generation