Correct path resolution methods:

Both path() and path_info() were implemented incorrectly. Instead
of being a conduit to PATH_INFO and PATH_INFO || '/', they were
used as SCRIPT_NAME . PATH_INFO or something.

This wasn't also incompatible with Plack::Request.

This cleans it up and adds a test for it as well.

This currently breaks a bunch of tests that I will have to sit and fix. :/