Iterator

Implementation of an iterator that goes thru a Component and all its sub-components in a tree (pre-order) traversal. A test case that demonstrates the usage is also included, along with wrapping to make these iterators accessible from scripting..
I like the new comment; very helpful. I think we should modify the last sentence, since users won't be calling addComponent. Perhaps, instead, tell the user that they shouldn't call this method until initSystem has been called on the model? Also, as of now, I think we should just say "model", not "top model"; we can update the comment once we have good support for nested models.