Support generic Hadoop Compatible Filesystem

This is a shortened version of PR #358, with focus on filesystem only.