Track events for GA (bug 903056)

**This is dependent on https://github.com/mozilla/webpay/pull/280 so look at the second of the two commits to see what the event stuff is all about.**

The basic idea here is to add events for all the interesting things that can happen in webpay.

Form errors provide error codes so we can lookup the error from a mapping for consistent errors, for example we don't want to send translated errors in the event.

If tracking is turned on in your local settings you should see relevant beacons being fired off as events happen.

As soon as https://github.com/mozilla/webpay/pull/280 lands I'll rebase this. That'll be after the tag on Monday so we can get a good amount of testing on this next week to avoid JS errors creeping in.