ceph_mon: check for existing mon store before opening db

This will make sure that the monitor data directory is populated before
proceeding to opening it up.  We have to do this in order to work around
leveldb, which will create 'store.db' (even though it won't populate it)
upon opening the database.  Unwillingly, running the monitor without
first issuing a mkfs would have us ending up with a 'store.db' in the
monitor's data directory, and later on we would get errors from the
monitor not finding magic values within the store -- which given mkfs
hadn't been run isn't surprising.

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
Looks like I forgot about this branch.

Both of you had valid points.  'mon_may_exist()' was unintentionally left in the patch, as in its form it wasn't particularly useful.  And -ENOTDIR as a possible return code makes me believe that I may have had a different idea for that function but no longer recall what it may have been.  I dropped this function.