Use wrapt to provide the deprecated class proxy

Instead of having our own mini-proxy class use the
robustness (and correctness) that the wrapt library
provides to implement a more compliant object proxy
that handles edge-cases better than our own.

Also adds a few basic sanity tests to ensure that the
moved/deprecated classes operate as we want them to.

Change-Id: Ib7ca832700583d3ca5e175cb322aa00543cbc475
Merge "Use wrapt to provide the deprecated class proxy"