added filesystem part and tests (initial)