Modular, opensource, high performance G-code interpreter and CNC controller written in Object-Oriented C++