Java object graphs, to and from JSON automatically