Rework default pathname defaults and working directory pathname.
New logic:
- *default-pathname-defaults* is just #!default, which as an argument
to pathname operations has the same effect as not passing it and
implying the default pathname defaults parameter instead.
- (param:default-pathname-defaults) can be set to #f (default),
meaning use whatever (working-directory-pathname) returns
- wrkdir.scm no longer depends on the default pathname defaults
mechanism at all (although it is still kind of broken: it should be
a thread-local file descriptor fit for use with openat &c.)
This way nothing gets stored in a band.
If the extra parsing turns out to be slow, we can the working
directory pathname in a string that we clear with a secondary GC
daemon, but let's wait for a measurement of slowness before
bothering.