Fix Uncovered set of literal patterns
The reason is that the fix from Trac #11303 introducing NLit was
incomplete: The LitCon case desugared to Var rather than LitVar,
which would have done the necessary case splitting analogous to the
This patch rectifies that by introducing the fresh unification variable
in LitCon in value abstraction position rather than pattern postition,
recording a constraint equating it to the constructor expression rather
than the literal. Fixes Trac #16289 and Trac #15713.