Branch/performance

@BrettASwift @kadst43 would you mind reviewing?
We did verify that turning the recursion into a `while` loop did give me several more fps.  Our testing suggests that our blockly programs are still running as expected.