stop accessing Polytope.list_poly, instead iterate or enumerate Polytope

because it is a container of ConvexPolytopes.
rename Polytope.list_poly -> ._polytopes (and so also hide it)

where each item in _polytopes is a ConvexPolytope.
rename methods: [Convex]Polytope.reduce -> .reduction

to emphasize that a new object is returned (namely the reduction of that polytope), whereas the object to which the method is bound remains unaffected.
In contrast, the verb "reduce" would suggest actively operating and changing the polytope, which isn't the case.
This also pertains to (suggested) immutability of polytopes.
update Polytope docstring
update __init__
bump version to 0.1.1