def get(self, key):
        """Return the value of a field.
        
        Take a string argument representing a field name, return the value of
        that field at the time of this TimeMachine. When restoring a 
        ForeignKey-pointer object that doesn't exist, raise 
        DisciplineException

        """
        modcommit = self._get_modcommit(key)
        if not modcommit: return None
        # If this isn't a ForeignKey, then just return the value
        if key not in self.foreignkeys:
            return cPickle.loads(str(modcommit.value))
        # If it is, then return the object instance
        try:
            return TimeMachine(uid = modcommit.value).get_object()
        except self.content_type.DoesNotExist:
            raise DisciplineException("When restoring a ForeignKey, the " \
                "%s %s was not found." % (self.content_type.name, self.uid))
Return the value of a field.
        
        Take a string argument representing a field name, return the value of
        that field at the time of this TimeMachine. When restoring a 
        ForeignKey-pointer object that doesn't exist, raise 
        DisciplineException