Add support for sourceMap

* removes filter since that will not help with the 1 to 2 or 2 to 2 mapping
* adds support for source map by generating of `.min.js.map` file per `.min.js` file generated into the tree
* composed source map if there is an existing `.js.map` file from previous transformations in the tree

Note: This PR depends on https://github.com/mishoo/UglifyJS2/pull/580

TODO: 

* [x] cache (if needed)

/cc @ericf @eventualbuddha

As I mentioned yesterday, I think this is a bad idea. Instead, I think it would be better to have an `outputFiles` collection on each cache entry, and iterate over that collection to determine which files to link from the cache dir to the dest dir.

The reason is that you can imagine outputting source maps being an option for this plugin, and someone could opt-out of generating source maps. In that case the code will get more complex because you have to check whether or `.map` file exists or not before linking/copying it over.