Fix client/server-side analytics race condition

We are seeing bad analytics data in Mixpanel because
we are not aliasing guests into users.

https://mixpanel.com/docs/integration-libraries/using-mixpanel-alias

Segment.io strongly recommends doing this client-side:

https://segment.io/docs/integrations/mixpanel/#alias

Restrict user-facing flash messages to a known whitelist
so we don't accidentally send `flash[:signed_up]` to the view.

https://trello.com/c/ZzJdRvJu
Update tagline to include JavaScript, CoffeeScript
Use existing webhooks

https://trello.com/c/9I7EgBue/372-fix-subscription-issue

* Subscriptions were failing when webhook already existed, this change
* fixes the issue by using the existing webhook.
Add pull request info to Build model

* add `commit_sha` and `pull_request_number` attibutes
* extract stub helpers in pull_request_spec
* dry up tests
Handle nil violations
Don't review JavaScript for indentation mistakes
Update regular expressions for file type checking

* Match file extension to end of string
* Match file extension with one or more leading characters
Update reports
Use new Membership API when adding Hound to teams

https://trello.com/c/ru1udGS2/370-use-new-memberships-endpoint-when-adding-hound-to-github-teams