Add LevelDB support to OSD backend

This is the first draft for LevelDB support. Simply implement necessary
methods via LevelDB API.

The following roadmap is go:
1. Support multi thread
2. Unify OMap API
3. Read/write operations will be reduced by metadata
4. One object is constructed by multi key-value store objects
5. etc..
Abstract KeyValueStore backend and add new interface to KeyValueDB

Add different backend support to KeyValueStore, so let KeyValueStore
support other backend such as nvmkv.
Add new virtual interface "init" to KeyValueDB in order to make above
useful.

Signed-off-by: Haomai Wang <haomaiwang@gmail.com>
Add multi thread support for keyvaluestore

Add WorkQueue support for keyvaluestore in order to meet parallel
processing.

Signed-off-by: Haomai Wang <haomaiwang@gmail.com>