Refactor the DSL and add documentation