'Returns a dict(key=event id) = [ statetime, name, state, [read_by_who] ]
If for_user is set to a string, it will only return events the user
has not seen yet.  If left unset, it will return /all/ events.'

def get_events(self, for_user=''):

    self.events_filtered = {}
    for (k, x) in self.events.iteritems():
        if (for_user in x[3]):
            pass
        else:
            self.events_filtered[k] = x
    if ((for_user is not None) and (for_user != '')):
        for (k, x) in self.events.iteritems():
            if (for_user in x[3]):
                pass
            else:
                self.events[k][3].append(for_user)
    return self.events_filtered
