Introduce Specification::DSL