fix types of stx->list, stx-car, etc.

see also https://github.com/plt/racket/commit/ada4fb74fa28b0f72ed590785afb9ebe08dded45 and https://github.com/plt/racket/commit/99c8da4d92259251c6fbdac38969c16dec80ef62
For a type alias like `(define-type Foo SomeType)`, TR can usually recover the right type alias when printing the type `Foo` (internally this is stored just as `SomeType`---it really is just an alias). 

For something like `(define-type (Foo X) (U X (Bar X)))`, the `Foo` is a type constructor that can be instantiated for many types, like `(Foo Integer)` or `(Foo String)`. TR also represents these by expanding the type application (so `(U Integer (Bar Integer))` for example) but can't easily recover the original form `(Foo Integer)` when printing the type.

So that's why your type didn't print as `(Stx-Listof a)`. The right solution for this in the long term is probably to represent type constructors like `Stx-Listof` not as universal types but as real type constructors that are a separate kind of object than ordinary types.