Switched to use guava typetoken instead of jackson specific typereference