Simpler to hold on to GroovyShell

... and this is necessary to evaluate() and other stuff
Moving the parallel step into the 'steps' package

... in anticipation of adding more CPS-specific step impls
Added a utility step impl for testing.

This one is useful to test a step that needs a workspace without bringing in the whole WorkflowJob
WiP
Made the evaluate method work for the first time

Turns out the category override for CPS-enabled "each" method was breaking the classloading
Implemented the rest of the evaluate-like methods

These are easy to spot as their implementations in the Script class uses GroovyShell
Verifies that evaluated code is still CPS transformed
Released 0.7
Integrated the evaluate() function support

As a first step toward loading workflow script from SCM, I added
CpsScript.evaluate(String) that evaluates the text as a script into
the current workflow.

This implementation correctly CPS-transform the code and put it into
sandbox (if applicable.)

Stuff that's not yet done:

  - Evaluated script needs to be remembered along with their class name,
    so that when the execution comes back from the disk, it'll be still
    in the classloader.

  - Step implementation that allows you to point to a relative file in the
    current workspace and load it.
function name 'evaluate' resolves to CpsScript.evaluate(), so we need a new name
GroovyClassLoader seems to have InnerLoader that's used to load script (sometimes?)

Not sure when this test started failing, because this used to work!
but relaxing the whitelist anyway to allow for inner loader.
Groovy CPS that doesn't use category.

Classloading inside CPS execution manifested problems previously unseen
in groovy-cps. This version fixes that.