__iter__ and __len__ should use members() which is a class method and can be overriden