Proper 404/500 distinction for client collections
Added connection timeout for client gateways

n.b., I'm nowhere near 100% convinced this is doing what I expect it to