This name is now overloaded with the all-caps macro `ENABLE_MEMORY`, should we rename the macro?

Also, can for_writing be semantically either a bool or an enum type if we expect other options at some point?