Initial _install implementation.

Filthy, but works. The idea is adding a layer for doing the real
work and adding a much sweeter and refined layer on top of it for doing user interaction
and security checks. That will be implemented in actions.install().