Fix xhpast Makefile for parallel builds

See: https://github.com/facebook/libphutil/issues/29
Allow PhutilTypeSpec to validate regular expressions

Summary: Adds a `regex` type to PhutilTypeSpec.

Test Plan: Unit tests; triggered the exception manually and read it to make sure it made sense.

Reviewers: btrahan

Reviewed By: btrahan

CC: aran

Differential Revision: https://secure.phabricator.com/D6855
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
Enhance support for JIRA as an authentication adapter

Summary: Ref T3687. Actually pull account info in JIRA and expose it via the standard API.

Test Plan: See next revision.

Reviewers: btrahan

Reviewed By: btrahan

CC: aran

Maniphest Tasks: T3687

Differential Revision: https://secure.phabricator.com/D6867