Return multiple cursors from publish function.
Review of PR #716 (multi-cursor publish).

- History.md update

- tweak docs

- refactor the "one per collection" check

- make errors into internal errors.  Programming errors like returning the wrong
  type from a function on the server don't need to be reported to the client.
Merge PR 716 into devel: returning multiple cursors from publish.