APPLY needs a catch all case for type constructors
Normally, they get erased, but in case they haven't at compile time this
ensures they are at run-time. It's safe just to return an erased term
since it can't be inspected. Fixes #416
(This may mean something is wrong in erasure, or it may simply be that
something is sufficiently higher order that the unused argument checker
doesn't feel it is safe to erase.)