Fix a bug in computing the size of a segment that led to utilization > 1.0.
The old code for computing the size of a segment (to be stored in the
segments table) could leave off the last object to be written to the
segment. This could cause the computed segment utilization to be greater
than 1.0, which should be impossible. Fix the size calculation so that it
should always include all data written to the segment. As a bonus, this
also correctly computes the size of metadata-log segments, even though the
metadata objects don't appear in the block_index table (which was
previously used for computing the segment size, but is no longer).