ceph.in: better error message when daemon command returns nothing

Signed-off-by: Dan Mick <dan.mick@inktank.com>
AdminSocket users: use generic formatting

All call() routines get a format parameter; all places where
JSONFormatter was created get a new_formatter() instead.
'plain' formatting is unsupported, and help is forced to be
'json-pretty' as it was.

Signed-off-by: Dan Mick <dan.mick@inktank.com>
ceph_argparse.py, ceph.in: validate_command: stop handling format

We were passing the entire parsed_args Namespace just to look at
and tack on 'format', and that's kinda silly; do it in the callers
instead.

Signed-off-by: Dan Mick <dan.mick@inktank.com>
ceph.in: admin_socket() now validates command and passes format

Signed-off-by: Dan Mick <dan.mick@inktank.com>
ceph.in: clean up help, fix partial matching on all help

Signed-off-by: Dan Mick <dan.mick@inktank.com>
ceph.in: fix help yet again (squash)

Signed-off-by: Dan Mick <dan.mick@inktank.com>
ceph.in/ceph_argparse.py: move find_cmd_target() to ceph_argparse.py

Signed-off-by: Dan Mick <dan.mick@inktank.com>
ceph_rest_api.py: remove unused imports

Signed-off-by: Dan Mick <dan.mick@inktank.com>
OSD: provide newer command descs with module/perm/avail

Signed-off-by: Dan Mick <dan.mick@inktank.com>
OSD: "tell <osd.n>" version, bench, dump_pg_recovery_stats: formatted

Signed-off-by: Dan Mick <dan.mick@inktank.com>
PG: pg <pgid> query, list_missing get formatting

Signed-off-by: Dan Mick <dan.mick@inktank.com>
ceph.in: reject --admin-daemon so it can't do harm

Fixes: #3944
Signed-off-by: Dan Mick <dan.mick@inktank.com>