Set autosave on has_many to avoid validation issue

When we save the association we can run into a condition where the
image is missing through virus check, or on preview and development
environments where we don't copy the assets.

Unless we use an `autosave: true` on the has_many association, we run
into a situation where we cannot save the join model correctly and we
end up missing associations when republishing.

This can also be fixed by sorting out the image validations on the
`edition_world_location` model, but this is a cleaner solution.

Also moved the association off the main edition model and into the
module for neatness.

Ticket: https://www.pivotaltracker.com/story/show/45879539
Make world_locations available for all editions

In order to allow EditionFilter to work, we need to support world
locations from all editions. Therefore the NullWorldLocations mixin will
create the associations but turn off the UI so that the records can
never be created. This is more explicit than simply including them in
Edition.