verify sliced index input magic check issue:
fix NPE
located clone issue but not fixed yet
relocate FSDirectory related code in new fs.go
change function variables to interface
change function variables to interface
change function variables to interface
switch from func fields to interfaces
add meaningful desc