Fix bug in ClientCacheHelper::ReopenClient()

In ReopenClient(), we lookup the current client in client_map_, add a
new client to client_map_ in CreateClient(), and then use the iterator
from the lookup to erase the original client. Since client_map_ was an
unordered_map, the iterator may not have been valid after adding a new
entry to client_map_ (in addition, other operations could have
occurred in different threads). To ensure the iterator remains valid,
we switch client_map_ to be a map.

Change-Id: Iafb232169f6b14ad38d3ea3349ac9ca5d21c2f00
Reviewed-on: http://gerrit.sjc.cloudera.com:8080/5046
Reviewed-by: Henry Robinson <henry@cloudera.com>
Tested-by: jenkins