## Description
Ensures toolchain versioning records `edition`/`flavor` derived from
`Move.toml` when available. This was not the case before, because I was
under the impression that `BuildConfig` reflects the current edition. Also ensures
`Move.lock` is written for `client publish` if it was not generated by `sui move build`
## Test Plan
Updated test(s).
---
If your changes are not user-facing and do not break anything, you can
skip the following section. Otherwise, please briefly describe what has
changed under the Release Notes section.
### 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
- The `Move.lock` will be populated with the edition corresponding to
that in the `Move.toml`, if it exists.
- The `Move.lock` will be generated and populated with toolchain
versioning information on `sui client publish`.