Compound scheduling impl

See #79
Optimized rescheduling

See #79
Cleaning
Cleaning
Changes platform/midi to run compound actions recursively

See #79