make generic HCFS as under filesystem; setup VM environment for under filesystem unit tests

This make generic HCFS as under filesystem.

The unit test environment for Cephfs and Glusterfs is created by vagrant, detailed information can be found at vagrant/{ceph,glusterfs}/README.md.

Not there yet. MiniDFSCluster is environment agnostic, it doesn't require a HDFS environment. To make HDFSCluster work for unit test, I need to build a vagrant VM that contains HDFS. This will come up next though.