Even when not evaling/cache-checking, we need to lock to prepend to
path.

Fix a bug where accessing an invalid attribute in hlist would segfault.

There is no need to do any directory-related stuff if we are in a
Location context. Added d_is_location flag to the hlist
structure, and added checks for it.

Skip map-to-storage phase when we are wrapped in a Location (it
attempts to do a directory_walk). The implication is that
Location trumps all Directory configs which have no effect. But
it's much faster this way.

Track down where in core.c the trailing slash is added as part of
the why-are-we-doing-this research with respect to appending
trailing slashes to all directories.