peak_load_window can be called with time_windows file (fixed time windows, as before) or without (flex windows read from events). Time windows (fixed or flexible) are now pre-computed while initializing the strategy instead of re-computed during each step.
Kept flex_window as its own strategy because there is a difference in costs handling.
Implements #201
peak_load_window can be called with time_windows file (fixed time windows, as before) or without (flex windows read from events). Time windows (fixed or flexible) are now pre-computed while initializing the strategy instead of re-computed during each step.
Kept flex_window as its own strategy because there is a difference in costs handling.