I spent most of the day trying to figure out how to reimplement my model with Handly, and I think that the easiest way is to implement a parallel model from scratch. That's because the current one mixes the "handle" and "body" functionality and they are difficult to separate incrementally.
Anyway, I would like to ask for a bit of feedback, as you probably did think more about how to implement models than I did.
The model elements sit in a parent-child hierarchy tree. An element can have children of different types or with different purposes that are exposed separately through the IFooSomeElement interfaces. Do you think that these specific methods (for example a project's getSourceFolders and getIncludeFolders) should be implemented as filters over all children, or should they be backed by separate lists/arrays? The former makes it easy to handle adding/removing children, but may be a bit ineffective if the children need to be filtered many times.
Also, what kind of values is ISourceElement.Property meant for?
Finally, an unrelated question: are there update sites for nightly builds? The "older Eclipse targets" fix has not been released yet.