Multiple changes to address common errors

1) Adds a fallback when using the iOS Simulator to ensure that local
account status is properly returned
2) Collects error checking to all reside before the user can click the
button to initiate the request
3) Removes excess NSAsserts. We're all adults here.