Massive refactoring

- separating harness code into Harness and GlobalHarness modules
- removing LazyLoad function
- exports now expose a global harness
- test() is a method of a harness
- only() is a method of a harness
- skip() is a method of a harness