'Clone ``self`` and update specified options.'

def clone(self, updates={}):

    obj = dict.__new__(self.__class__)
    for (option, value) in self.items():
        obj[option] = value
    for (option, value) in updates.items():
        obj[option] = value
    return obj
