goaoauth2provider: fix derived classes chaining-up
Sometimes an OAuth2 provider needs UI to prepare before authorization, but the parent class will insist on controlling the dialog state machine that's tied to the GTask.
When the parent passed to add_account()/refresh_account() is a provider dialog, simply have it hold the final reference on the task. The derived classes then complete the task using the standard API, simply passing through the error or result.
closes #350 (closed)