コレクション抽象基底クラス
継承関係を一度整理したい
型ヒント書くときにも役に立ちそう
ここではベースクラス < 派生クラスと表記する
Iterable < Iterator < Generator
GeneratorはIterableなのでfor文で回せる
Iterable < Reversible
(Sized & Iterable & Container) < Collection
(Collection & Reversible) < Sequence < MutableSequence
Collection < Set
実装では__slots__ = ()(空のタプル)