Made OpenId components injectable

In addition, ensured that static access didn't hold references to old
components.

Fixes #3277
Merge pull request #3277 from jroper/3277-openid-state

OpenID breaks after a reload