librados: use rwlock for lookup pool, cache results

Use rwlock to read cahed results, only use regular lock if
results are not cached.
Invalidate cache on new osdmap.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>