improving source map composition

* relies on `SourceMapGenerator.fromSourceMap` instead of creating a brand new generator (more info here: https://github.com/mozilla/source-map#sourcemapgeneratorfromsourcemapsourcemapconsumer).
* skips weird maps without source (learned from uglify-js)

note: this PR is suppose to fix the composition when using es6-module-transpiler + esnext + uglify in the broccoli infrastructure that we are working on.

note2: `fromSourceMap` helps with the path to the source files in the map. the current implementation in recast relies on creating a new map based on the path to the source, as a result, the path to files in the inspector is not preserved, and the temporary path is used for the final map, while `fromSourceMap` preserve those too.

/cc @eventualbuddha 
Ok, I have done more investigation on this, and it seems that the only difference between `SourceMapGenerator` and `SourceMapGenerator.fromSourceMap` is the path resolution for `sources`. E.g:

when using `new SourceMapGenerator` for the aggregation, it simply add up new files to the source collection:

![image](https://cloud.githubusercontent.com/assets/38969/5039222/e03dc382-6b68-11e4-91bf-886712c12b4e.png)

... but when using `SourceMapGenerator.fromSourceMap` it does the right thing by reusing the original sources:

![image](https://cloud.githubusercontent.com/assets/38969/5039246/39eb1128-6b69-11e4-928a-f53155972901.png)

in code, it translates to:

```
{"version":3,"file":"base.js.map","sources":["b.js","a.js","main.js","/Users/caridy/repo/uh-prototype/tmp/compile_modules-tmp_dest_dir-isA5vcEE.tmp/b.js","/Users/caridy/repo/uh-prototype/tmp/compile_modules-tmp_dest_dir-isA5vcEE.tmp/a.js","/Users/caridy/repo/uh-prototype/tmp/compile_modules-tmp_dest_dir-isA5vcEE.tmp/main.js"], ...
```

vs 

```
{"version":3,"file":"base.js","sources":["b.js","a.js","main.js"], ...
```

that makes me think `SourceMapGenerator.fromSourceMap` is the correct way of doing the composition, but I'm still intrigued by the test failure.