Remove generated static files from .gitignore.

Every time I build an egg, the next time I start making changes to javascript
or css, I wonder why my changes aren't having any effect. Ideally these files
should get generated into the build directory instead of the source, but for
now, just remove them from .gitignore so they'll show up in `git status`.
Include submitted review requests in the "Starred Reviews" page in the dashboard.

While users can star submitted reviews, they do not appear in the "Starred
Reviews" page of the dashboard. To fix this, I modified DashboardDataGrid to
include submitted reviews when it displays the starred reviews, by filtering
all public starred reviews. Also, we need to keep the counts for starred
reviews consistent, so in accounts.Profile, I included ReviewRequest.SUBMITTED
when we star or unstar a review request.

Testing done:
Manual testing: starred and unstarred a combination of submitted and
non-submitted reviews to see if they would be displayed properly on the
dashboard.

Reviewed at https://reviews.reviewboard.org/r/4578/
Fixes bug 1075.
Fix z-index on user account drop-down

Added a z-index property to lists in accountnav to have the contents of the
account dropdowns not be concealed by the changelist-filter in admin dashboard
while managing users.

Testing done:
Went to admin dashboard --> manage users, and then hovered over user account
tab in the top navigation bar and ensured that part of it was no longer hidden
by the table in the main content.

(Ran unit tests anyway and they all passed, though I'm assuming changing css
wouldn't affect any of those)

Reviewed at https://reviews.reviewboard.org/r/4597/
Fixes bug 3088
Move listenTo from .render() to .initialize()

My earlier implementation of a couple of the views on the diff page would
attach to the 'change' signal every time the view was rendered, and so
accumulate a bunch of excess connections. Instead, make this connection once
during initialize(). Trivial change.

Testing done: Smoke tested the diff viewer.
Replace User.get_profile() with dedicated model look-ups.

The user profile module is officially deprecated, and User.get_profile() is
going away in Django 1.7. Just because it's deprecated doesn't make our Profile
model obsolete, it just means we need to do the queries manually.

There's nothing in Review Board itself that causes problems here. In fact,
while I was in here I found some cases where we were using User.get_profile()
where we really wanted Profile.objects.get_or_create(), to ensure that the
profile object existed.

Testing done:
* Ran unit tests
* Smoke tested the UI

Fixes bug 3083.
Reviewed at https://reviews.reviewboard.org/r/4590/
Address ALLOWED_HOSTS changes.

In Django 1.5, it's required to set ALLOWED_HOSTS in the settings. Previously,
this had defaulted to ['*'], which performed no host validation (and
potentially allowed host poisoning attacks).

I've added a default of ['*'] to settings.py, which is expected to be
overridden by settings_local.py. For new installations, rb-site will set this
to the domain name entered during installation. There's not a fantastic way to
deal with this for upgrades. rb-site upgrade can modify settings_local.py, but
it doesn't have the domain name.

I think what we'll do is mostly documentation, with a three-fold approach:
* Include instructions in the release notes.
* Create a "security practices" document in the admin manual, bringing together
  content from various existing documents/faqs/etc, and include ALLOWED_HOSTS
  in this as well.
* Build a page in the admin site that can do automated security checks and make
  recommendations to the user.

Testing done:
* Ran with DEBUG=False against Django 1.5.4 and verified that the default
  setting worked correctly.
* Built an egg and installed it into a virtualenv. Created a site with rb-site
  and checked that settings_local.py contained a correct ALLOWED_HOSTS.

Reviewed at https://reviews.reviewboard.org/r/4600/
Change django.utils.simplejson to json.

Django 1.5 deprecates the use of the bundled simplejson, because Python 2.6's
json module includes everything that's needed.

Testing done: Ran unit tests
Reviewed at https://reviews.reviewboard.org/r/4601/
Remove Inline Review click event from File Attachment Review button.

The event is a placeholder which is preventing the Review button
from opening its hyperlink when clicked.

Reviewed at https://reviews.reviewboard.org/r/4610/
Don't show "Show changes" when there is only one diff revision

Added logic to review_detail.html so that if the past revision number of a diff
is 0 (when the first revision of the diff has been added after a review request
has been published) so that the "Show changes" link would not be displayed.

Testing done:
Reproduced the bug by publishing a review request, then adding a diff and
verifying that the "Show changes" link does not appear. Added a second diff to
the same review request and verified that the "Show changes" link does appear
as it should for the second diff.

Reviewed at https://reviews.reviewboard.org/r/4613/
Fixes bug 2901
Move diff pagination into javascript.

The pagination selector is pretty ugly and terrible at this point, and we'll
probably redesign this later, but for now, I'd like to keep it as-is but allow
it to update dynamically so we can load different revisions. This change moves
its rendering into javascript.

Testing done:
Set up a few different revisions with different pagination. Checked that the
pagination selector rendered appropriately in different cases, and that the
different links went to the right pages.

Reviewed at https://reviews.reviewboard.org/r/4603/
Import ValidationError from django.core.exceptions instead of django.forms.

They haven't announced any official deprecation of this, but it seems like
exceptions are being consolidated in one place. This change also marks some of
the validation strings for translation which we had missed.

Testing done: Ran unit tests
Reviewed at https://reviews.reviewboard.org/r/4608/
Speed up the tests further, and remove interdependencies between tests.

Several of the tests would call other tests to set up data, invoking API
requests to provide the data, which added to the test execution time.
This also made it harder to separate tests out into list/item suites.

The tests are now setting up their data using the new factory methods
instead of calling other test functions.
Remove leading and trailing blank lines in review comments.

When a user submits a review comment, leading and trailing
blank lines are saved as part of the comment. We want to strip
these blank lines before saving the comment to the database.

Testing done:
Created new review request and manually tested:

-review
-review reply
-diff comment
-reply diff comment
-file attachment comment
-reply file attachment comment

Unit tests pass.

Reviewed at https://reviews.reviewboard.org/r/4561/
Fixes issue 2933
Generalize the validator for regex form fields, and add a test for an invalid regex.

This moves DefaultReviewerForm.clean_file_regex out into a reusable validator
that can be added to any field. In addition, I've added a test for attempting
to create a default reviewer with an invalid regular expression.

I did this incidentally while banging my head against failures caused by the
changes to PUT in the test client, but it's a good change nonetheless.

Testing done: Ran unit tests
Revewed at https://reviews.reviewboard.org/r/4616/
Bump dependency to Django 1.5.x

Pull in Django 1.5.4 and Djblets 0.8.
Add quotes to {% url %} tags.

The url templatetag has been changed to require quotes around string arguments
(like everything else does). Update our templates accordingly.

Testing done:
* Ran unit tests.
* Grepped for "url" in all our templates.

Reviewed at https://reviews.reviewboard.org/r/4619/
Update for PUT payload changes in the test client.

In 1.5, django.test.Client changed the behavior of PUT, OPTIONS, and DELETE. In
1.4.x and prior, OPTIONS and DELETE behaved like GET (encoded any data in the
query string), and PUT behaved like POST (encoding data as multipart). These
are now very generic, and it's up to us to manually encode the data and set the
content-type for PUT requests if we want it to get to the server.

Testing done: Ran unit tests.
Reviewed at https://reviews.reviewboard.org/r/4620/
Fix the subject in test_put_reviewrequestdraft_publish

In Django 1.5.x, the locmem email backend will trigger header validation and
generate a message ID. This means that the subject when publishing a second
draft will be "Re: ...". Our previous implementation of the assertion was
actually incorrect, but it took a while to convince myself of that.

Testing done: Ran unit tests.
Reviewed at http://reviews.reviewboard.org/r/4621/
Bump python requirement to 2.6.x
Change Djblets dependency to 0.8.0.dev