Parameterise the rootfs read-write base directory

Perform validation, giving each error its own id.

Separate the error id type for the implementation, such as
constructors, from the error id type for the RootFS interface.