Ups, didn't finish my comment on covariant for generateNew(). I think it might be a bit late to do that in the 6.0 framework, but something we should definitely revisit for 7.0. Can you make sure a JIRA is created to track that?