librados, os, osd, osdc, test: Add support for client specified namespaces

Add rados_ioctx_namespace_set_key() and librados::IoCtx::namespace_set_key()
Add namespace to admin-daemon operations
Support namespace in osd map command
Add namespace to object_locator_t and hobject_t
Add random namespaces to psim program

Feature: #4982 (OSD: namespaces pt 1 (librados/osd, not caps))

Signed-off-by: David Zafman <david.zafman@inktank.com>
librados: Add operate()/operate_read() log messages

Signed-off-by: David Zafman <david.zafman@inktank.com>
rados: Add namespace arg (--namespace, -N) to rados command

Signed-off-by: David Zafman <david.zafman@inktank.com>
test: Add namespace test cases to librados tests

Signed-off-by: David Zafman <david.zafman@inktank.com>
test: Add namespace list test cases to librados test

Signed-off-by: David Zafman <david.zafman@inktank.com>
osd: Prepare for nspace match with simpler is_match_all()

Signed-off-by: David Zafman <david.zafman@inktank.com>
osd: Add the ability to set capabilities on namespaces

Parse namespace spec in osd caps and use in is_match()
Add test cases to unit test

feature: #4983 (OSD: namespaces pt 2 (caps))

Signed-off-by: David Zafman <david.zafman@inktank.com>
osd: Clean-up redundant use of object_locator_t

Remove locator arg from get_object_context()/find_object_context()
Remove locator from object_info_t but retain encode format
Remove locator from object_info_t dump output
Remove OLOC_BLANK

Signed-off-by: David Zafman <david.zafman@inktank.com>
osd: Add namespace to dump_watchers output

Signed-off-by: David Zafman <david.zafman@inktank.com>
librados/misc.cc: reverse offset and length on write call

Signed-off-by: Samuel Just <sam.just@inktank.com>
Merge branch 'master' into wip-4982-4983-oloc-rebase