Add an EditionDeleter service

Also remove edition callbacks for :delete
Use EditionDeleter in admin editions controller
Remove unnecessary quotes in EditionUnpublisher
Stop using Edition#delete! in tests

Most of the tests just want a deleted edition to work with so we can
create one directly with a factory.

A couple of the tests just duplicate testing done in the EditionDeleter
test so have been removed completely.
Remove redundant edition workflow tests

The publish, force_publish and delete actions are all tested by the
service objects. Having these tests is redundant and could encourage
future developers to use the methods directly, which would be bad.