Changing how File objects are saved and restored

Before the _.clone would copy an object without a `contents` property but
it did have `_contents`.  This didn't work well at all when it was
restored, especially with gulp-concat.

This patch will restore actual File objects.

Also removed an unused variable and will now produce an error when
encountering a stream.

THIS PATCH BREAKS TESTS!  It works fine for me in real life, but I
don't understand the test system well enough to know how I broke the
tests.