tests: Add basic BaseTest class for test cases

This way, all the tests will have access to devices that are supposed to
be connected and devices that are not.
tests: Specify what interface each device is accessible (or not) from

This is necessary because some methods, like `netcontrol.api.devices()`
need to have the interface specified.
run_test_suite: Run Python tests with nosetests
Merge branch 'add-test-infrastructure'