mem: move set_permissions, open_existing around
mem: move set_permissions, open_existing around

open_existing should not have been outside the impl Filesystem block;
set_permissions should have come towards the bottom.

open/open_existing are left where they are simply because those two
functions are so large.

twmb/rsfs