## Description
This adds support for `public(package)` visibility, including feature
gating it between Move 2024 edition. It also includes tests to ensure
visibility and feature gate checking.
## Test Plan
Add new tests to the compiler, including expected results.
### Type of Change (Check all that apply)
- [ ] protocol change
- [x] user-visible impact
- [ ] breaking change for a client SDKs
- [ ] breaking change for FNs (FN binary must upgrade)
- [ ] breaking change for validators or node operators (must upgrade
binaries)
- [ ] breaking change for on-chain data layout
- [ ] necessitate either a data wipe or data migration
### Release notes
Initial `public(package)` support added to Move 2024.alpha. This
compiler feature is intended to be an easier to use variant of
`public(friend)`
---------
Co-authored-by: Tim Zakian <2895723+tzakian@users.noreply.github.com>
Co-authored-by: Todd Nowacki <tmn@mystenlabs.com>