Move RFC2396/RFC3986 parsing to canonicalizers. Fixes #30.