IO.py was useless
docstring updated + defensive programmming