#477 Sigh. Forgot to check if I was handling generics in the prototypes.
Another attempt to fix it.

The current fix is a bit of a hack. I use the signature for the prototype
but this looks awful. Interpreting the signature would also allow me to
detect things that actually did not change. Currently, changing a type
var name signals an incompatible change.

However, just do not have time to spent a lot of time on this.