major refactor to api. buildr style DSL for each test scenario