I don't understand why we are splitting the scheme, location and port here.
I need to use urlparse currently to get the values I want:
url = urlparse.urlparse(self.root)
# and then url.hostname, url.port, url.scheme
I think it's easier to create an urlstring than to parse the bits we need out of one urlstring we already have.
Maybe I'm missing some use case here ? What do you think about changing the signature of this class to accept an urlstring?
Where would you like to use full url? in the config?