Caching (fixes #31), rewrite yolo in yolisp (fixes #27)

![](http://mylittlefacewhen.com/media/f/img/mlfw3330-1330548352244.gif)
If only this were Haskell, then I could do `((flip yolisp) env)` to partially apply it with the right environment.

![](http://cur.glitter-graphics.net/pub/3144/3144014yei5mj8ukt.gif)