Replace StorageStarted event with TaskStateChange events.

This change makes it easier to consume events about the state of tasks.
Previously, ~every consumer of TaskStateChange needed to know to also consume
StorageStarted and query the full storage.  The new change makes TaskStateChange
more intuitive and therefore less error-prone.

Reviewed at https://reviews.apache.org/r/16575/