This isn't ideal, but here you have to make some trade-off, because in both Java and Lisp you can't have two versions of the same library loaded at once (actually, in Lisp you can do that with some rename-package trickery, but that's beyond the scope of quicklisp. I wonder, can you do the same thing in clojure? ;)
Considering specifying dev-dependencies. Once again it's not in the scope of quicklisp, which is a library distribution tool and not a dependency management tool. But ASDF, the build tool and dependency management system, allows to do that quite easy: for example, you can define a separate system for dev, which you may load or not load, depending on your needs.
Actually, leiningen tries to do all at once: dependency management, library distribution and building. And that's why it's quite complicated (in the sense of Rich Hickey's complecting, I mean)...