cls_rgw, rgw: bucket index logs modifications

Add a log to the bucket index.

This commit also ties the "epoch" version that is kept
per index entry to the relevant ceph pool id. This fixes
the dependency on the specific pool where the object was
created, and makes it possible to copy rgw data pools.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
cls_rgw_types: fixup previous commit encoding issues

Don't use the packed_val stuff, because it's somehow broken. Bump
the min compatible version in rgw_bucket_dir_entry encoding, because
we're changing the data in the middle of the encoding. And set the
ver.pool value to -1 (so that it matches the constructor) when
decoding old-format encodings.

Signed-off-by: Greg Farnum <greg@inktank.com>
cls_rgw: bucket index versioning

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

Conflicts:

	src/cls/rgw/cls_rgw_types.h
cls_rgw_types: fixup previous commit to not use packed_val encoding

It's broken.

Signed-off-by: Greg Farnum <greg@inktank.com>
radosgw-admin, cls_rgw: list bucket index log

a new radosgw-admin command to list bucket index log.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
cls_rgw_types: remove the packed_val encoding system

It was broken, so we aren't using it anyway.

Signed-off-by: Greg Farnum <greg@inktank.com>
radosgw-admin: bilog list gets marker and max-entries params

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