'Rather than doing the lookup now and assigning self.value or something,
this binding creates a new object. This is because, for a given Config
object, it might need to be bound to different parts of a configuration
tree.
For example, if a "host" Config object is under an UnspecifiedConfigSection
it will be end up applying to each subsection. We therefore bind it
multiple times, once to each subsection.'

def bind(self, conf, prefix):

    return BoundConfig(config=self, bind_to=conf, grab_key=self.key, prefix=prefix)
