internal/v4: implement changes/published
internal/v4: add changesPublished error tests; disallow limit=0
Merge pull request #104 from rogpeppe/045-changes-published

internal/v4: implement changes/published

As recently added to the specification.
charmload: some refactoring to address review comments