Revert compare_stream to stdlib 1.9.3 implementation

I've stumbled over "Could not backup ... Got passed new contents for sum" errors are after some investigations it turned out the problem is new implementation of FileUtils.compare_stream

Please check https://tickets.puppetlabs.com/browse/PUP-2946 for more details.
The FileSystem namespace implements an abstraction layer that masks differences between different versions of Ruby and different platforms (eg https://github.com/puppetlabs/puppet/blob/master/lib/puppet/file_system/file18.rb and https://github.com/puppetlabs/puppet/blob/master/lib/puppet/file_system/file19.rb), and it seems like this fix would be appropriate to break into a 1.9 and 2.0 implementation for `compare_stream`. Could it be possible to split out the Ruby version dependent code into subclasses that override this as necessary?