Get rid of render and all its support code

We can use System.PathName.build instead.  We lose some functionality
such as rendering unresolved paths, or rendering to a foreign
representation, but those features were only internal and unused anyway
and wouldn't be difficult to restore.

In theory, this might also have worse performance due to joinPath not
using bytestring's optimized concat, but if that is the case it's an
easy fix to make it use intercalate.  Perhaps by patching posix-paths
upstream.

This may or may not be possible without throwing away either the gain in
performance or the monoidal semantics of combine.  It may also turn out
to be an unnecessary manual optimization that the compiler already does,
in some way.

Consequently, System.Path.Internal is significantly simplified and
almost completely #ifdef free.  Almost.
Introduce opaque RealPath for canonicalized paths

And repurpose Resolve as a variant of Reify that produces these
canonicalized absolute pathnames instead.