Testing schema

The new testing schema.

This is the new testing schema. Let me know if there is something I missed.

This will probably break a lot of the existing testing framework. But everything broken is obsolete and will need to be deleted/rewritten