Plugin interface

A plugin interface that may actually make sense!

Pretty much implements #16
I have removed the `--haas` prefix for this option.

The ability to have runner plugins take options will come later.