query: improve scheduling query
Turns some boolean arguments in the scheduling query to flags, which are easier to extend and makes the code easier to read. Make extra methods for configuring and querying the supported scheduling modes. This should make it easier to add new modes later.
Showing with 253 additions and 178 deletions