Split Types.lowerBound into two methods; fix bugs in inference handling of capture variables. Reviewed-by: vromero