Get rid of Attachment factory

We shouldn't ever instantiate a base Attachment instance.

These factories are still fishy though - Firstly, they are created
without an attachable model, which shouldn't really be allowed.
They will also set the ordering an ordering based on a sequence,
unless it is explicitly provided. This means that the normal mechanism
for setting the ordering (based on the number of attachments already
attached to the attachable model) is bypassed, even if you build
the attachment and then assign it to an attachable model. We've got
away with this because the sequence will ensure uniqueness of ordering
and that they are incremental, but it does mean we are creating
weird test data in our tests.

I did make several attempts to clean this up, but there are a lot of
interdependencies in the factories for attachments and attachable
things like publications (which automatically add attachments) and
some of the traits like :with_file_attachment.
AttachmentBuilder builds FileAttachments