add `transform` and `clobber` options

if you set `clobber: false` ncp will not overwrite files. defaults to true (old behaviour)
also, transform option:

```
ncp(from, to, {
  transform: function (read, write) {
    read.pipe(transformStream()).pipe(write)
  }
},
function () {})
```

This allows the user to apply a streaming transform while copying files.
This option only effects normal files.
I'm using this to apply templates.