Draft: algorithm batching using synchronous scheduling
Extremely hacky and debug-statement-filled code, demonstrating batching of algorithms via a synchronous scheduling approach.
The scheduler will not launch an algorithm if it is intended to run in a batch, instead promoting it to BATCHWAITING. When there are sufficient event slots to fill a batch, a single task is launched with multiple event contexts provided.