Add parametric types

You will need to recursively apply the `fixValue` to nested values.  Specifically, if you have a `Map<Double, Double>`, Jackson will rewrite nested doubles to longs when the double does not have decimal values.