Don't set time_started when not necessary

The state_changed mixin had a bug where it would set time_started for a
job to utcnow() every time a batch of task was assigned to an agent.