def select(scope=None, fn=None):
    """
        Select values based on scope; returns list eqivalent
        to self.values() if scope is None, otherwise filtered.

        Return value function may be passed as self.items or
        self.keys to get items/keys instead of values.
        """
