Refactored Computer Algebra Project

Hi, 
I have removed all circular dependencies using the Interface Segregation Principle. Also, The code generator is now replaced with T4 templates, which is easier to maintain and does not need any manual copy&paste of the generated code. 

please pull the changes into the main repository. 

thank you!