note_slice subsets the timesteps of a noteworthy string by integer
index or logical vector of length equal to the number of timesteps.
note_sort sorts the timesteps of a noteworthy string by pitch. When a
tie exists by root note, the next note in chords are compared, if they exist.
For example, a, sorts lower than a,ce.
note_rotate simply rotates anything space-delimited or vectorized in
place. It allows chords. Octave numbering is ignored if present.
For note_shift the entire sequence is shifted up or down in pitch, as
if inverting a broken chord.
If notes contains chords, they are broken into successive notes. Then
all notes are ordered by pitch. Finally shifting occurs.
Instead of a moving window, note_arpeggiate grows its sequence from
the original set of timesteps by repeating the entire sequence n
times (n must be positive). Each repeated sequence contributing to
the arpeggio is offset by step semitones from the original.
step can be negative. It defaults to 12, increasing all notes
by one octave.