Run sidekiq when running with bowl

Now with sidekiq workers, we need to run the App with foreman to run
sidekiq and the web when using bowl. This commit adds foreman and the
web worker to the Procfile.
Merge pull request #223 from alphagov/run-sidekiq-when-running-with-bowl

Run sidekiq when running with bowl
Add publish and withdraw permission check
Refactor document controllers to use permissions

This now only allows publishing and withdrawing by users with the
relevent permissions.
Use permissions to show/hide publish & withdraw

Users shouldn't be able to click publish or withdraw unless they have
the relevant permissions.
Testing new permissions workflow
Merge pull request #225 from alphagov/writer-access-permissions

Writer access permissions
Send manual slug to to rummager for manual sections

So that search results can be scoped to sections within a manual.
Merge pull request #226 from alphagov/send-manual-to-rummager-for-sections

Send manual slug to to rummager for manual sections
Move logic from exporter to PublicationLog

By encapsulating the logic for fetching change notes for a publication,
it's possible to reuse it with other exporters.
Merge pull request #227 from alphagov/refactor-manual-change-notes

Move logic from exporter to PublicationLog