[WIP] Workflow build step

Changes to allow the plugin be used in a Workflow.  In particular... look for `TODO` markers in the changes I made.  These were things I was not sure about.

Atm it works using the base 'step' step (i.e. you need to specify the $class) e.g.
```
node('master') {
  // Do stuff....
  step($class: 'hudson.plugins.copyartifact.CopyArtifact', projectName: 'project1', filter: 'hellothere.txt')
  // More stuff
}
```

Once the workflow apis are published (?) we can build a dedicated step for this, it would look something like the following:
```
node('master') {
  // Do stuff....
  copy(projectName: 'project1', filter: 'hellothere.txt')
  // More stuff
}
```

I refactored the `perform` parts of the `CopyArtifact` class a little.  I did not change the basic logic, just composed it a bit better (I think) in an effort to make sure I understood how it worked.  We can keep that refactoring if we think it's an improvement in the readability of the code.  Otherwise... I'll back it out and minimize those changes.
No need for this override, it is the default behavior in `BuildStepCompatibilityLayer`.