added the autogeneration of the C++ headers and cpp files and refactored the class generation scripts so that they are easier to work with