DataFileWriter: allow any sort of stream
fix: use boost::shared_ptr for function argument

I was using auto_ptr to pass the out stream into DataFileWriter. That’s
the wrong way to do it because assignment of auto_ptr releases the old
one.
version bump to 1.7.7-run1
Merge branch 'release/release-0.7.7-run1' into run-release