Client library: fix deadlock introduced by the change of using protocol worker thread to execute meta server RPCs. With this change it is no longer possible to use the same global client instance mutex with asynchronous read request completion handler, as the meta server RPCs executed without releasing this mutex, and therefore resulting in deadlock with multiple parallel threads once waiting for read completion, and the other waiting for the meta server RPC completion. To avoid deadlock create new dedicated read request completion mutex, ensure that global and read request completion mutexes acquisition order is always the same in all code paths.