G-Code: Definition, Commands and Programming