3.0.0
------
Backward compatibility breaking changes:
- Simplify slice API in views: `layout.field_mut()` instead of `layout.field_mut().data_mut()`
- Removed SizedField::SIZE and added Field::SIZE as an Option<usize> (None if the field is open ended). This change breaks backwards compatibility for code using the SIZE field.
- Move some exported names into the "internal" namespace to denote that they're not supposed to be used in user code

Other changes:
- Added support for nested layouts
- Added the ::SIZE constant for returning the size of a whole layout.
- Added support for f32 and f64
- Added support for unit (`()`)
- Guard against users accidentally calling internal macros by marking them with '@'
- Fix some doc links
- Add inline annotations for better performance

2.1.0
------
- Add feature to use this in no-std builds
- Added support for i128 and u128

2.0.1
------
- Fix documentation issues

2.0.0
------
- Improve documentation, e.g. include layout definition in documentation for the generated code
- Allow defining custom field types by implementing the LayoutAs trait
- Refactor: Simplify traits and their dependencies

1.0.1
------
- Fix dependencies on third party macros

1.0.0
------
- Add Code Coverage to CI
- Improve documentation

0.3.0
------
- Improve README.md
- Improve documentation
- More unit tests
- Fix clippy lints
- Add View::into_storage()

0.2.0
------
- Improve README.md
- Add LICENSE files

0.1.0
------
- Initial version
