Add storage dir and eviction strategy [TACHYON-33][SubTask 2 & 3]

resubmitted for PR361, rebase to current master.
this is a unsafe operation.  If the code checks if a block exists, then takes action, by the time the action is taken, the block may no longer exist.  Might want to merge the check-then-set logic into one call.