add cache
Caching nodes for calculation
Tweaked snake evaluator, added tests