Detach dropdown on hide and appendTo body on show.

This makes it less likely for a "nuked" picker (whose element has been overwritten with new html, as with Backbone.js) to leave its dropdown behind in the page DOM, eating up memory.

While detach/appendTo are much less performant than hide/show, it doesn't seem to be that big of a deal for one-off user-tiggered events.