* change the pattern sequencer from being a plain list (ad hoc use of car and cdr) to list-streamer

* change varname pat-rest and pattern-spool to pattern-streamer

* make sure apply-measure-pattern func is protected from empty pattern or ran out of pattern