mon: MonitorDBStore: return -ENOENT on get() if key doesn't exist

And adjust version_t get(string,string) so that, in case of -ENOENT, it
returns 0 (when a key doesn't exist, assumes its value is zero), and make
sure it asserts in all other negative return values.

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
mon: PaxosServices: don't ignore get_version(ver,bl) return value

get_version(version_t,bufferlist) can only return one of two values:
  -ENOENT iff the version doesn't exist
  zero iff it was successful

Any other value is incorrect.

Fixes: #4281

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
Merge branch 'wip-4281'

Reviewed-by: Sage Weil <sage@inktank.com>