npm submodules track published branch + package update.

There are publish scripts in each package pushing to 'published' branch before publishing to npm. I used branch rather than tag because git submodules do not understand tags.

I am thinking of not using submodule at all, cause they are always a pain. Cloning the package into a ignored directory should be sufficient for the packages distributed via npm.