[FIXED JENKINS-17199]

To inject DSL into the script being parsed, the common technique used
elsewhere (for example in Spring bean builder Groovy DSL) is to set
the DSL object as a delegate. This avoids the need to do string
manipulation, and there's no ExpandoMetaClass hack necessary.

I'v moved the bindings to FlowDelegate. This resolves
the conflict between "build" as a variable and "build" as a function
(since binding gets found more quickly it tries to evaluate that
variable as a Callable), and it'll also make it easier for people to
find all the available DSL methods/variables in one place.
Added a mechanism to define DSL extensions
Merge pull request #22 from jenkinsci/extension

Added a mechanism to define DSL extensions
Merge pull request #21 from jenkinsci/JENKINS-17199

Fixed JENKINS-17199
added support for Simple Parameters
fixing path to flow.png
Merge pull request #24 from rpetti/additional-parameter-types

added support for Simple Parameters
Merge pull request #23 from rpetti/fix-icon-path

fixing path to flow.png