Add missing child fields in pict

Closes PR 14358
Improve TR's extra-env-lang

Instead of parsing the module's body like env-lang,
export a `type-environment` form instead. That way
the module may contain any auxiliary definitions
or expressions that are needed.

Additionally allow #:opaque and #:struct clauses
for opaque and struct types in the base type environment.

Update typed/syntax/stx for the new API.
Add typed/pict which exports part of pict

Does not cover all of the bindings yet, but it
should just be a SMOP after the last extra-env-lang
feature additions.