Refactor the getPossibleType method in JsonEncoderDecoderClassCreator

This commit is a Refactor the getPossibleType method in JsonEncoderDecoderClassCreator to make it easier to test the code afterward.

I created a kind of JsonTypeInfo.Id visitor that can be reused for other
matters. I extracted some of code from the JsonEncoderDecoderClassCreator to
put it in a specific visitor which responsibility is to get the possible subtypes for a given class type.

I also remove the logger "wrapper" methods which where IMO useless and error prone as they were sometime always raising exceptions !?

Added a test to test the visitor logic. Not tested the actual code that was pre-existing.