Consolidate operation state management.

Before, tracking state of operations was really confusing. This change makes a break with the documentation, which calls out region, global, and zone ops separately. Using one api for all operations makes it easier to grok what the code is doing, as well keep things more organized.
this will break the retry loop!