add a layer of indirection, so that we can eventually handle non-jackson2 jax-rs serialization