add filestore impl + tests
implement Iterable on MemoryPath + test
add tests for Path type checking + start/endWith itself
check path parameters & throw providerMismatchEx when needed
fix wrong exception type on FileSystems.get
refactor memory fs URIs and path