With admin metadata rest API implementation and unit test cases for it

Signed-off-by: Babu Shanmugam <anbu@enovance.com>
rgw: modify metadata RESTful implementation

REST handler should derive from RGWHandler_Auth_S3,
other changes.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Fixed certain bugs on rest admin APIs

Signed-off-by: Babu Shanmugam <anbu@enovance.com>
Removed the check for parameter validation in op_get()

Signed-off-by: Babu Shanmugam <anbu@enovance.com>
ceph_json: don't try to parse NULL buffer

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Modified PutMetadata::get_data() to handle chunked transfers

Signed-off-by: Babu Shanmugam <anbu@enovance.com>
rgw: add region to bucket info

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw: update json encode/decode for new bucket info

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw: a function to read all request input

Factor out this useful function. Also make sure that
we never read more than a specified (large enough) max.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw: parse location constraint on bucket creation

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw: store region in bucket info

only handle requests that come to buckets stored in correct
region.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw: add access key to zone info

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw: infrastructure to send requests to different region

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw: forward bucket creation to master region

plus many fixes.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw: pre-generate bucket object version before creating it

Use this version when creating the bucket instead of letting the
objclass auto-generate it, so that we could return it to the slave
region when creating its bucket on the master.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>