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
I think the python error message (for import error) is descriptive enough and goes to the right output stream (`stderr`). So I still don't see a point to it.

It probably _beautifies_ the output since the user is not seeing a `Traceback`. In any case, this is a nitpick.