Now using Jackson instead of gson, and supports streaming of the response