def parse_track(self, fp):
        """Parse a MIDI track from its header to its events.

        Return a list of events and the number of bytes that were read.
        """
        events = []
        chunk_size = self.parse_track_header(fp)
        bytes = chunk_size
        while chunk_size > 0:
            (delta_time, chunk_delta) = self.parse_varbyte_as_int(fp)
            chunk_size -= chunk_delta
            (event, chunk_delta) = self.parse_midi_event(fp)
            chunk_size -= chunk_delta
            events.append([delta_time, event])
        if chunk_size < 0:
            print 'yikes.', self.bytes_read, chunk_size
        return events
Parse a MIDI track from its header to its events.

        Return a list of events and the number of bytes that were read.