creating the Indexable class for clean, memory-efficient iteration over contained widgets in Containers
altering the implementation to take advantage of indexable generators
adding some detail to the decision to use widget.hidden instead of widget.visible