Add relative performance test for link expansion
Refactor link expansion to avoid N+1 queries

This improved expansion of 100 items from c. 190ms to c. 30ms in
testing.
Replace performance tests with a query count version.

Because time based performance tests are sensitive to the environmenti
they're being run in, it's difficult to make them reliable while still
having meaningful thresholds.

Replacing these with a test that checks the query count gives us a
reasonable assurance that these endpoints will have decent performance,
without relying on potentially flakey tests.

These tests use a threshold of 5 queries for these calls.  These
currently take 4 queries (publish_intent lookup, item lookup,
linked_items and translations), so this allows a little headroom for
future changes while still ensuring that we're not doing one query per
linked item.
Allow exact redirects to include query and fragments

The router now supports exact redirect targets that include a query
string or fragment, so we can now allow them here.
Merge pull request #93 from alphagov/redirect_destination_query_string

Allow exact redirects to include query and fragments
Fix formatting of Rabbitmq README instructions.
Add documentation for publish intents.
Never set cache TTL to less than 5 seconds.

In order to avoid hammering origin, the cache TTL is always set to at
least 5 seconds, which will still allow for timely publishing.
Remove auto-cleanup of intents on publish

Now that we're setting a minimum cache TTL of 5 seconds, there's no
pressing need to clean these up immediately.

This behaviour previously meant that it was important that any "coming
soon" content item was published before the intent.  Removing this
behaviour simplifies this use case, and also simplifies the code.

Intents will now only be cleaned up by the nightly cronjob.
Merge pull request #95 from alphagov/rejig_intent_cleanup

Apply minimum cache TTL of 5 seconds, and remove publish intent auto-cleanup.
Typo fix.
Merge pull request #94 from alphagov/publish_intent_docs

Add documentation for publish intents.
Merge pull request #91 from alphagov/efficient_link_expansion

Refactor link expansion to avoid N+1 queries