Move PosixFile and PosixDirectory to separate modules