Merge hierarchy store into Tachyon [TACHYON-33 sub-task 5 & 6]

Merge hierarchy store into Tachyon, which supports storing data on both memory and other storage(SSD HDD etc), client side and RPC interface are also modified accordingly

JIRA:
https://tachyon.atlassian.net/browse/TACHYON-38
https://tachyon.atlassian.net/browse/TACHYON-39
currently, the client only request space from top storage tier, when requesting space, client first check if there is enough space already requested but not used in some storage dir.
Ramdom check does not guarantee all  the storage dirs are checked and each storage dir is only checked once.