Support package management systems

This adds support for a number of package management systems:
* npm
* component
* bower
* composer