added a new scheduling class
Task block takes in a start time end time and a task
it can be stored cleanly in a hash set because its hashing function
is only dependant on the start time integer