Start of new feature on worldwide offices
Make logo help independent from organisations

This is to support the WorldwideOffice (which isn't an Organisation)
using the same functionality.
Working CRUD for Worldwide offices

Note the frontend css is mostly imported from organisations and is quite
a bit more bloated than it needs to be right now.
Validations for worldwide offices
Extract social media controller functionality

Rather than using a module, I've extracted this into a helper class for
the moment: we're composing the objects together rather than mixing in
ActiveSupport::Concerns and polluting the object namespace. The tests
are still in the organisation at the moment.
Extract Social Media view/ActiveRecord concerns

Again the tests still live in the relevant organisation objects. I plan
to drive out this using the cucumber test as my guide, and refactor the
tests when I include the social media functionality into Worldwide
Offices.
Extracted social media tests into shared helper

This allows us to call these tests from another object. Repeating test
calls in this manner for functional tests will slow down our suite, but
these tests could be isolated and turned into unit tests in future.

Also added a dummy organisation_type_id as we want `attributes_for` for
organisations to work out of the box allowing us to create a new object
via the controller tests.
Extract social media testing from organisation

Also repurposed DocumentBehaviour to be for any models, not just
editions, and renamed more appropriately.
Worldwide offices have links to social media

Finished extraction of the relevant code from organisation - scenario
now passing.
Typo caught by regression test
Remove GDS editor requirement: seperate story
Extract org contact behaviour from view/controller
Extract org contact behaviour from model
World locations have contacts

Extracted org tests from model and controller and applied them to the
worldwide office object. Tweaked the contact model to allow polymorphic
associations.

Note that the migration will copy the organisation information into the
new contactable fields but will leave the organisation_id field as an
orphan to be removed in a future migration.
Rudimentary display of contacts on frontend

Scenario now passing.