Fixing view state issues on app boundaries

Doing an iOS 8 pass, I came across a number of issues where not waiting on asynchronous UI processes to complete was causing issues in (re-)initializing new UI state.  I'll annotate specifics in the code.
That block of code is repeated across several files - anyway we could move it to some util class?