Close up some holes in variance inference (e.g., check some missing
items, check uses in trait bounds) and have it report an error when
bivariance results.
Support type parameter variance
WIP -- work on tests
Change variance check to a lint