Add Block methods to get raw data directly from values

Use type for block value methods
Remove unused methods on type
Move Block.compareTo to SortOrder
Add type tests
Change Block callers to use Type where possible

Remove unused block methods
Remove fixed width block class isolation
Change block encoding factory to not be type specific
Add BlockBuilder methods to write raw data directly

Use type for block value write methods
Remove unused methods on type
Move BlockBuilder methods to Type
Remove BlockIterable
Remove type from BlockEncoding
Add new block tests
Remove Block.getType()