In a discussion on plugins (#599), we raised the idea of using a Plack::Builder all the time, and then allow plugins to add middlewares.
I know exactly how I want to implement it, in this case:
Have a Builder attribute and add handles to the add_middleware method and have that available in the DSL.
This is a two part process. This issue is the first one. I'm opening another issue for the second one.