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..
This constructor needs a doxygen comment explaining its memory management policy. It appears that it would take over ownership of any passed-in filter; that must be very explicit or we will have memory leaks in the near future!