## Description
Closes#291
- Update extractors to support Minecraft 1.19.4
- Update code generators.
- Changed generated entity component names to avoid name collisions.
- Update `glam` version.
- Added `Encode` and `Decode` for `glam` types in `valence_protocol`.
- Fixed inconsistent packet names and assign packet IDs automatically.
- Remove `ident` and rename `ident_str` to `ident`.
- Rework registry codec configuration. Biomes and dimensions exist as
entities.`BiomeRegistry` and `DimensionTypeRegistry` resources have been
added. The vanilla registry codec is loaded at startup.
### Issues
- Creating new instances has become more tedious than it should be. This
will be addressed later.
## Test Plan
Steps:
1. Boot up a vanilla server with online mode disabled.
2. Run the `packet_inspector`.
3. Connect to the vanilla server through the packet inspector to ensure
all packets are updated correctly.
4. Close the vanilla server and try some valence examples.
<!-- Please make sure that your PR is aligned with the guidelines in
CONTRIBUTING.md to the best of your ability. -->
<!-- Good PRs have tests! Make sure you have sufficient test coverage.
-->
## Description
This adds an API for getting the wall / attachable variant of a block.
Unlike #117 it does not add convenience methods for orientation, and it
does not modify the example to use this code.
## Test Plan
<!-- Explain how you tested your changes, and include any code that you
used to test this. -->
<!-- If there is an example that is sufficient to use in place of a
playground, replace the playground section with a note that indicates
this. -->
The extractor is not tested.
The API has some tests in the test module.
#### Related
<!-- Link to any issues that have context for this or that this PR
fixes. -->
#115 - it does not fix this, as it doesn't modify the example, but it
could lead to it.
---------
Co-authored-by: EmperialDev <saroke.dev@gmail.com>