split theory -> chords, pitches, scales
add test cases; fix revealed bugs
turn Pitch, PitchClass, Interval into classes; distinguish between Pitch and PitchClass