Eventually we will want to do Travis-powered publishes, but while we're
getting everything sorted out want to do a few manual ones. This commit
ensures we do a build as part of every publish. Some hoop-jumping is
required because we only want to run as a result of `npm publish` and
not `npm install`.
I think NPM is not packaging the .flow file here because it would be
.gitignore'd. This is confusing, because it *is* packaging the .js file
(which is similarly .gitignore'd).
NPM will defer to an .npmignore though, in the presence of a .gitignore,
so I think this might be the fix to the missing file in the package.