SR-14273: Byte Code Based Value Witnesses

This effort seems like it could form a good basis for eventually supporting static structural reflection (since that will need a way to represent the layout of a type in a binary), which is why I disagree with @Joe_Groff's point here:

It may make sense to do a quick design pass of that to make sure we don't end up with two similar-but-incompatible things.