Only decode/collapse paths.

This operation cannot fail.
Move cfs global.
Move path resolution to CFS layer.

The Chirp server now only URL decodes and collapses paths from the wire. The
CFS layer now resolves these paths which usually involves prepending the root
path and a final collapse.

The net result of this change is reduced coupling of modules. Now every module
"above" the CFS layer sees the same abstraction of the Chirp root as clients.
Add test cases for proxy/hdfs.

This commit also makes HDFS function properly for an empty host:port. This
indicates the user wants to use the "site default", supported by the hdfs.h
API. [This also conveniently allows us to write the test case for HDFS without
specifying a specific host:port.]