saveinstance serialization contract

The current serializer visits game and children and emits Instance.new plus Name. For the listed part classes (Part, MeshPart, UnionOperation, SpawnLocation, WedgePart, CornerWedgePart), it also attempts Position, Size, BrickColor, and Anchored. It does not emit Parent assignments, full properties, script Source, attributes, tags, constraints, or a binary place format. Some emitted classes are not constructible with Instance.new, so the generated text is not guaranteed to recreate a working place. The first Instance argument does not select a subtree. Options other than second-argument FileName are not implemented. saveinstance uses its own native output-path handling, unlike the workspace resolver used by readfile/writefile; use a simple filename in the workspace.