Class for packed binary data stored in ruby Strings. BitStruct accessors, generated from user declared fields, use pack/unpack to treat substrings as fields with a specified portable format. Field types include: signed and unsigned integer (1..16 bits, or 24, 32, 40, 48... bits) numeric fields (signed, unsigned, float) can be designated as any of the following endians: little, big, native, network