Q does work as a wrapper. Now, RestClient won't work as wrapper.

Even though we broke RestClient, this is actually a good thing. Now that
Q follows the wrapper pattern, in order to implement RestClient, we will
be forced to figure out the pattern that will work when a service
depends on another service that is wrapped. This pattern will then
become the pattern for all user defined services. We should make this
as simple as possible so that users can easily define their own services
without having to dig into JSO and angular's construction mechanisms.