-------------------
This release adds more field types and further improves on existing code. It also extends the documentation
significantly.
* Added Destructify GUI, contributed by `mvdnes <https://github.com/mvdnes>`_.
* Added :attr:`StructureOptions.encoding`
* Added :attr:`StructureOptions.alignment`, :attr:`Field.offset` and :attr:`Field.skip`, implemented by
:class:`Field.seek_start`
* Added :attr:`Field.lazy`
* Added :attr:`Field.decoder`, :attr:`Field.encoder` and :meth:`Structure.initialize`
* Added :attr:`BytesField.terminator_handler`
* Added :attr:`ConditionalField.fallback`
* Added :attr:`ArrayField.until`
* New field :class:`BytesField`, merging the features of :class:`FixedLengthField` and :class:`TerminatedField`. These
fields will remain as subclasses.
* New field: :class:`ConstantField`
* New field: :class:`SwitchField`
* New field: :class:`VariableLengthIntegerField`
* Merged :class:`FixedLengthStringField` and :class:`TerminatedStringField` into :class:`StringField`
* Removed hook functions :meth:`Field.from_bytes` and :meth:`Field.to_bytes`
* Removed all byte-order specific subclasses from :class:`StructField`.
* Add option to :class:`ParsingContext` to capture the raw bytes, available in :attr:`ParsingContext.fields`
* Add :attr:`ParsingContext.fields` for information about the parsing structure.
* Added :attr:`ParsingContext.f` for raw attribute access; this is now passed to lambdas.
* Added :class:`this` for quick construction of lambdas
* :class:`Substream` is now a wrapper instead of a full-fetched BufferedReader
* Numerous bugfixes for consistent building of fields.