Use component-installer rather than riding on component's private API

This allows us to (more easily) stay current with component's
installation processes and reduces our dependency footprint. :)

Closes #1.