Support generic Hadoop Compatible Filesystem

This is a shortened version of PR #358, with focus on filesystem only.
can you remove the static?  If this needs to be static, then the new conventions say 'Static variable names should be prefixed with s, for example public static String sUnderFSAddress;'