Further caching support
Caching system has now two layers:
+ Raw input layer
+ CodeBlock layer

It first checks if whole input was cached. If it wasn't, it will search for cached blocks of code