Previously a test definition could only be created via xml. Also fix some minor lint warnings.
With this change, also refactored runtest as follows: Modified the test suite schema and python implementation to have an inheritance structure. Each test type has its own python module, which will also handle the logic of running the test.