Remove auto-scopes, and make request serialisable

Auto scope addition has been removed. AddService remains in client
as a stub method until the templates are updated.

Request has been decoupled from client, so should now be serializable
without dependency. This required changing the deferred execution model
slightly.