Autotest ONIE

This is beginning of the testing framework for ONIE.

At the moment, it provides just the groundwork:
* Parameter validation
* Dynamic module loading
* Dynamic test definitions
* Basic documentation
Whats the point of catching this exception? Shouldn't we allow it to fail if the python module `ipaddr` does not exist?