Kerneltree2

This PR adds an AIR interpreter that reconstructs a KernelTree and evaluates it. It also implements a DeferredDataDescriptor to allow agnostic code to pull data when the computations are deferred.
There's also some preliminary work on reductions.