Require X-TBA-App-Id header for API v2. Fixes #844

There are two things going on in this pull request.

First, I changed the `User-Agent` header requirement to be a custom `X-TBA-App-Id` header requirement. This is because (as far as I can tell) browsers don't let you change the user agent even for JS HTTP requests. This makes any browser-based call to our API not work, including our own example GET request on the API Docs page.

Second, I made the user agent follow a specific format so that default User-Agents such as "Python-urllib" are not allowed.

Fixes #844