Massive refactoring of Url, QueryString, and Request for RFC3986

TODO: ArrayCookieJar & tests are failing
Fixing parsing of Set-Cookie and Set-Cookie2 based on RFC 6265.
Fixing infinite loop when using default exponential backoff plugin for 500 responses
Headers are no longer split on a default glue of "," when adding Rolls back 2f8565b46ac721259497a39e7f458a720acf9d64 This is necessary to work well with headers with commas (e.g. Date)