Set a sane default for hosting_service when validating repos.

We were accessing hosting_service without ensuring it always had a
value. We now default to None.
Don't use unique_together in HostingServiceAccount.

The unique_together constraint broke several MySQL instances, due to the
combined key name length being too long when using UTF-8.

This particular index isn't that useful to us in practice, so nuke it
until we know more about why this fails.

Any existing tables that have this successfully added should continue to
be fine. Any new ones won't have it. Django-Evolution doesn't get
involved with unique_together, so there's no evolution to ship.
Make use of Beanstalk's new blob API for fetching files.

Beanstalk kindly added a blob API for us so that we could easily fetch
the contents of files without need the base_commit_id. That gives our
users the choice to continue using older versions of RBTools or to
upload a standard 'git diff' if they choose.

We now use the new blob API when fetching the raw contents of a file, or
when we need to check file existence without having a base_commit_id.

Unit tests were updated to handle the new flows, and to not expect
errors in the case of Git + no base commit ID.