Correctly generate change notes from publication log

[Trello ticket](https://trello.com/c/Ni3TBiUM/258-bug-change-notes-on-manuals-are-quintupled)

When a manual and its documents are published, we create a PublicationLog entry -- one for each document, each time the manual is published. This is then used to generate the change notes.

However, we only want to generate a change note for a document for the first PublicationLog entry for each document version.

Create a PublicationHistoryFilter encapsulating the logic necessary to do this.
I even wrote this with the ruby Enumerable documentation open on my desktop. And still missed this.

argh. Means we can get rid of `PublicationHistoryFilter` entirely and push the logic back to the `ManualChangeNoteDatabaseExporter` as-was before. Done.