If the constraints for the scheduler are such that there are no sections
which meet those constraints, the scheduler now returns an empty array
rather than crash. On the front end, this means that if you put in a set
of unmeetable constraints, the scheduler will present you with a blank
schedule rather than just hanging.