loosen URL handling for non-native protocols

Requests supports adding other protocols by mounting an adapter for them.  For
protocols that have unfamiliar URLs, requests currently prevents the request from ever reaching the adapter, making it impossible to extend requests with sometimes convenient protocol extensions.  This change allows requests to detect this and gives the adapter author the full ability to shoot themselves firmly in the foot.

NOTE:  This is to be compatible with the previous work I did to add a file URL scheme to Requests (which is now available here: https://github.com/jvantuyl/requests-file).  I've since added a data URL scheme implementation (available https://github.com/jvantuyl/requests-data).