Add support for command libraries and better dsl support