Unify steps storage

There was no point in storing the hash of steps separately for plan
and run steps (and possibly for finalize steps), since there is
no different usage for them: finding a step by id.