Bump Plek gem

The new version gives us Plek.new.website_uri
Use shorthand for conditional assignment

We can rely on these ENV vars being nil rather than blank as they are
highly unlikely to be set with an empty value
Whitehall.asset_host goes via Plek

We shouldn't need to access ENV vars from within the app. Plek should be
giving us exactly what we need.
Change default static asset serving in dev mode

Up to now, whitehall has defaulted to serving assets from preview in
development mode. This is the opposite of how all the other apps in our
stack works. This reverses that so that whitehall expects assets to be
served from wherever Plek says they will be, but also allows the static
server to be overridden directly with an ENV var (STATIC_DEV) if
required. For convenience for those developers who are running whitehall
outside of the VM, startup.sh has been updated to set this ENV var so
assets are served from preview.
Remove unused initializer

This initializer is no longer used as staging gets the right asset host
as of alphagov-deployment commit 12c3eefb6777881fea48c24638b04db2f6f3c07d
There should only be one Whitehall#admin_host

Plek gives us the correct host based on the current environement.
Whitehall.public_host derived from Plek

Up to now, we've set Whitehall.public_host in an initializer that is
overridden per-environment during deploy. Plek is the source of all
truth so we do not need to do this.
Remove more hardcoded URLs

In most cases, the default Whitehall.url_maker will give us what we need
to generate both public and admin urls. Some tests required slight
adjustment to reflect the slight difference in the newly implicit
protocol (derived from the environment) and the previously explicit one
hardcoded into the source.
DRY up url generation of atom feeds
Get rid of unused methods
Use consistent domain for test env
Don't special case protocol scheme

Once again, Plek tells us the truth.
Remove redundant code

This is no longer relevant
Remove more redundant code

Direct route registration is no longer performed - route registration
happens during panopticon registration now.
Remove more redundant code

This class was used in a data migration that was run long ago and is no
longer needed
Remove lots of hardcoded URLs

This also gets rid of some special case tests that were testing the
difference between the public and admin hosts on preview and production.
As we are now solely depending on the truth as told by Plek, we don't
need to have separate tests for preview and production in most cases.
Rework public_document_url to rely on env

No more switching the public host based on the incoming request.
Unstick GovspeakHelper

Way too much coupling to other helper files and the request context
here. These helpers should function independantly of any controller
context or request objects.
Kill off Whitehall.public_hosts and other helpers

Final piece of the puzzle: we no longer need to map incoming request
hosts to public hosts - the public host is always the same and always
derived from the env.
Remove public_host helper

No need for this anymore - the API presenters are only ever used in a
front-end context so they should get the correct host via the existing
ENV.