Improve java.lang.reflect.Type implementations
WELD-1692 Add CovariantTypes and InvariantTypes utility classes
WELD-1692 New bean type assignability rules implementation
WELD-1692 New event type assignability rules implementation
Minor types tests improvements
Fix CovariantTypes
- a type variable is assignable from a second one if the second one extends the first one
- Consider also the case when a wildcard is bounded by a type variable
Cosmetic changes
- names of method's parameters were slightly misleading (considering the usage of the method)
Use TypeVariables' uppermost bounds in AssignabilityRules
WELD-1684 - BeanTypeAssignabilityRules#matches is incorrect for TypeVariable with multiple bounds
Extend EventTypeAssignabilityRules2
- consider the case when the observed parameterized type contains a wildcard with a type variable as a bound
Make findbugs happy
Remove incorrect tests from EventTypeAssignabilityTest
- event with unresolvable wildcard cannot be fired
Align names
New DelegateInjectionPointAssignabilityRules implementation based on WELD-1692
Remove old AssignabilityRules implementations
WELD-840 WELD-1606 Fix compatibility with Groovy objects
Bad commit
Revert "Bad commit"

This reverts commit b33f61ae5e3360f3a2becba8e1684008c80c8c6d.