added first implementation of shell dsl