Improve documentation and add publish script.