Fix issue #28641630: Service client dumps are timing out for no reason

Actually, no reason.  The reason is that to do the dump we are doing
synchronous calls out to each service, but that is with the activity
manager lock held, so they can get blocked if their main thread does
any call back in to the activity manager.

To fix this, re-organize the dumping code so that the "with client"
path is separate, and doesn't require holding a lock the entire
time.

Change-Id: Ia96861c10da81048b3d2ac93a25760b68623cf34
2 files changed