Some test need to be run in a place where they can write on the disk.
I know we should stop using /sdcard but until I see the new document
explaining how the launcher can access the playground, we are going
to keep it that way.
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.