Add a third parameter to `SourceNode.fromStringWithSourceMap`

An important use case for `SourceNode`s, and especially for
`SourceNode.fromStringWithSourceMap`, is to concatenate files with
source map support. This works well as long as all the input source maps
and the concatenated file¿s source map are next to each other. That’s
because any relative source paths in any input source map have to be
rewritten to be relative to the concatenated file’s source map. This
commit adds a third parameter to `SourceNode.fromStringWithSourceMap`
allowing you to do this.
Merge branch 'lydell-concat-relative-paths'