[TACHYON-94] Reuse header and footer in UI code

Solve the problem mentioned in TACHYON-94 "Reuse header and footer in UI
code".
Change TachyonFS to have URI methods
add block handler to handle block files on different under file systems[Tachyon-33][SubTask 1]
wrap all closeables in a try finally block
when shell creates a tachyonfs, register it for closing when shell closes
[TACHYON-94] Fix the format problem

use one space instead of two spaces before id
Merge pull request #394 from PasaLab/TACHYON-94

[TACHYON-94] Reuse header and footer in UI code
modify according to comments
make close() simpler
add some negative test case
use guava's closer to replace current code path
Exclude javassist from curator-test in test scope of pom file to prevent unit test failure in TFSTest.
rename test cases for BlockHandlerLocal
fixed range check for inode file
use path separator for equals to protect against NPE
Merge pull request #397 from dcapwell/block-range-check

[TACHYON-113] fixed range check for inode file
Merge pull request #398 from dcapwell/TACHYON-114

use path separator for equals to protect against NPE
Merge pull request #396 from tkyaw/Exculde-Javassist

Exclude javassist from curator-test in test scope of pom file to prevent...
Merge pull request #395 from shimingfei/AddBlockHandler-new

add block handler to handle block files on different under file systems[Tachyon-33][SubTask 1]
remove license temporary