Optimize use of converters in structures.

Only worry about converters if we have some.
Optimize Bits and BitField.

Instead of sharding code, make both more efficient based on what they
do.
Use bytearray as underlying buffer.

This vastly improves read_binary() speeds (and maybe struct unpacking)
versus using strings. Make a read_ascii() function that returns strings
and move previous users of read()'s string behavior to read_ascii().
Remove the data block pointers from the structure.

Just read the pointers as a list of binary data, which simplifies
iterating over them.
Fix assert to not throw attribute errors.
Make compensation for missing sweeps more robust.