Fixes hooks not working in some cases

The compiler seems to generate two `extraMapping` methods for Hook<S, D> implementations. Their signatures looks like the following:

* `extraMapping(Object, Object)`
* `extraMapping(S, D)`

The code was stopping at the first one thus leading to possible ClassCastExceptions and making the mapping invalid.

This pull request aims at solving this problem by going through all generated `extraMapping` methods and ignoring the `extraMapping(Object, Object)` version.

No test yet. Can't find a simple way to test it for now.