SI-6169 Refine java wildcard bounds using corresponding tparam

When opening an existential, Java puts constraints in the context that are derived
from the bounds on the type parameters of the existentially quantified type,
so let's do the same for existentials over java-defined classes...

Example:
```
public class Exist<T extends String> {
  // java helpfully re-interprets Exist<?> as Exist<? extends String>
  public Exist<?> foo() { throw new RuntimeException(); }
}
```