Fix crash with ProxyAdapter

I knew that dereferencing a temporary return value was a bad idea, but
thought it might work. In this version a local copy is made. NOTE: all
of this pretty much assumes that we are working with pImpl'd objects. We
are being a bit cavalier with taking copies of the objects we are
binding to.

Again, more options with c++11 branch. This should all be marked for
cleanup with it.

@evanweaver