made mididevice more tolerant of column ordering