SI-1786 incorporate defined bounds in inference

Also fixes SI-5459.

Look, you don't have to redeclare the bounds, isn't it exciting? For instance,
there are eight places in JavaMirrors with this: ``` jTypeVariable[_ <: GenericDeclaration]``` After this code is in starr, those can look like this: ```jTypeVariable[_]```. Since TypeVariable's definition looks like this, ```interface TypeVariable<D extends GenericDeclaration>```, we already know that!