crush: move default bucket choice into CrushWrapper helper

Signed-off-by: Sage Weil <sage@redhat.com>
crush: add a straw2 bucket type

This is an improved straw bucket that correctly avoids any data movement
between items A and B when neither A nor B's weights are changed.  Said
differently, if we adjust the weight of item C (including adding it anew
or removing it completely), we will only see inputs move to or from C,
never between other items in the bucket.

Notably, there is not intermediate scaling factor that needs to be
calculated.  The mapping function is a simple function of the item weights.

Unfortunately, we need a natural log, which is expensive.  We use a lookup
table here.

Signed-off-by: Sage Weil <sage@redhat.com>
wip