[Reviewed by @mppf]

Refactoring the HDFS plugin to conform with Michael's QIO commit. This also adds
refcounting to the HDFS handle, and fixes a bug where we could try to close the same
file more than once (fixed by turning off QIO_HINT_OWNED after closing the file).