* Do not clone state, use TypeCheck it's not mutated
* do not recreate context for every migration
* use more optional semver check
* update SavedObjectMigrationContext type
* add a test model returns new state object
* update docs
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>