pile of cleanups for FilesystemOp(s)

In separate commits, for ease of reviewing (remember to comment on the pull request!).