Modified the Job.start() and stop() methods to take the start time and
stop time, respectively.  This removes the assumption that the
start/stop time is always equal to the current system time.  Tests can
now set up scenarios that were not previously possible.