Added some small tests to the queue implementation

Fixed a nil-dereference found by tests
renamed files to represent better what it contains
changed filenames around
Renamed Schedule interface to Planner

The new name conveys better what the interface is supposed to do
and is more distinctive than Schedule when laid next to Scheduler
Renamed Planner Next method to PlanJob, added parameter for Job

The passed in Job is the one currently in need of being planned
into the scheduler.