Started working on groovy-sandbox integration
Built the basic plumbing of interception.

Define an interface that handles the interactions with Groovy objects (Invoker), and provide one implementation that makes the call straight away (DefaultInvoker),
and another that goes through groovy-sandbox (SandboxInvoker.)  Make this object accessible from Env (Env.getInvoker()) and provide a method to set it (CallEnv.setInvoker()).
Intercepting property access
Implemented attribute access like foo.@bar
Hooked up attribute access interception
added a test for attibute expression getter
Implemented async execution of property getter/setter
Hooking up array access.

... and I don't understand why this code doesn't compile!
Fixed compilation error by removing generics

A bug in Javac or JLS, if you ask me.
CpsTransformer now transforms array instantiation
CpsTransformer now transforms array access
Added more test for array instantiation
Intercept constructor call
Handling spread and safe like this makes no sense.

Spread in particular may require individual function calls that might
run asynchronously.
This is not a mandatory dependency.

Necessary only when SandboxInvoker is used
First test for sandbox+cps
Changed the test case to Point to cover all the basics
Exposing these for subtype.

When used in the context of a subtype, Groovy seems to have trouble finding these private methods.
Added CpsTransformer subtype that combines sandbox + cps.

When we skip CPS transformation on methods, we still need to sandbox-transform them to be able to intercept calls from them.
This method results in double transformation