Found a discrepancy between Java and Groovy when dealing with interfaces, generics, and inheritence. Need a solution