Add header cache to DBObjectMap

OMap is used by PG to store PGLog, so it's called by each write operations.
Because leveldb don't play well in random read and "header_lock" limit the
concurrence. Add a LRU cache to avoid too much overload on seeking header.

Signed-off-by: Haomai Wang <haomaiwang@gmail.com>

In private cluster: we make two osd(replicate size 2) each backend with SSD make full use of. The io util can get 90%. Two OSD can get nearly 10k IOPS(4k). Before this patch, we only can get 35-45% of io util.

If something I missed or wrong, plz correct me.