Complete additional codeGen functions
Change BinaryOp scope parameter to use dictionary breaks current tests
Add example code
Add example runner