Support generic Hadoop Compatible Filesystem

This is a shortened version of PR #358, with focus on filesystem only.
@haoyuan @dcapwell I am going to change core-site.xml to tachyon-site.xml. The reason is that when using along with hadoop, tachyon's under fs core-site.xml and hadoop's core-site.xml may collide and cause confusion.

Better names are welcome.