Support fs-like stream paths as id

Streams returned by the fs core package, as well as vinyl-fs file objects
used by GulpJS, carry a 'path' property representing the path
of the file behind the stream. When this exists, it should be used
as an id instead of generating a fake id.