Add client API for Publication creation

Rebased this onto Tim's setup branch as I need to modify `avocet/main.js` to hook up the new `oae.api.publication`.