I added OAuth2 support to Fluux XMPP Go library: X-OAUTH2 authentication mechanism
We are working on making the OAuth2 toolchain to be top-notched. Storing password in client for authentication, even encrypted, is not a good idea.