Expand libphutil support for Twitter as an auth provider
Summary:
Ref T3687. Companion to the next diff, which adds the Phabricator half of this. Twitter is an easier OAuth1 proivder to implement and get a sanity check from, on the road to JIRA. Broadly:
- Consumer secrets are now wrapped in a PhutilOpaqueEnvelope for consistency with OAuth2.
- Twitter provider now returns full account info (username, profile image, etc), by making a call to the Twitter API.
Test Plan:
Registered using Twitter, got a registration form filled with information:
{F57054}
Reviewers: btrahan
Reviewed By: btrahan
CC: aran
Maniphest Tasks: T3687
Differential Revision: https://secure.phabricator.com/D6864