refactoring DSL
rename old classes and modules, make top level DSL classes
added general DSL, more refactoring