Fix detection of parameterized return types

This fixes the detection of the return type when a method declaration like this is used in a frame:

<T extends Animal> Iterable<T> getPets(Class<T> typeOfPet);

Such declarations currently lead to a classcastexception in ClassUtilities.

Such declarations are very useful for the new polymorphism support (see tinkerpop/frames#49), where the argument can be used by GremlinGroovy annotated to actually filter on that type, and restrain the results to the specific type. This fix however has no relation to the polymorphism support, just a bugfix for something not properly covered by ClassUtilities.