The motivation of this question is related to the fact that in various differencial geometry books I have seen three different criteria for chart maps. These were:
If $(U,\varphi)$ is a local chart, then $\varphi$ is a homeomorphism from $U$ to an open ball in $\mathbb{R}^n$.
If $(U,\varphi)$ is a local chart, then $\varphi$ is a homeomorphism from $U$ to an open rectangle in $\mathbb{R}^n$.
If $(U,\varphi)$ is a local chart, then $\varphi$ is a homeomorhpism from $U$ to an open set of $\mathbb{R}^n$.
Now, the point of charts is that their chart domains should be "trivial" topologically. From this, and some other (perhaps misunderstood by myself) remarks I have read in books, I have come under the impression that any open set of $\mathbb{R}^n$ is homeomorphic with $\mathbb{R}^n$ (this is certainly true for open balls and open rectangles, though).
This statement seems to be wrong though. For example, let $$ C=\{x^2+y^2 <r_0|\ (x,y,z)\in\mathbb{R}^3\} $$be an open infinitely long cylinder in $\mathbb{R}^3$, which is clearly an open set, so its closure $\text{cl}(C)$ is a closed set, then $$ M=\mathbb{R}^3\setminus\text{cl}(C) $$ is the complement of a closed set, so it is open.
However $M$ has nontrivial homotopy classes, in particular, loops that wind around the cylinder are not contractible. However homeomorphisms preserve homotopy, so $M$ cannot be homeomorphic to $\mathbb{R}^3$, but it is an open set of it.
Question: What is a general criterium to determine whether an open set of $\mathbb{R}^n$ is homeomorhpic to $\mathbb{R}^n$ itself?
Based on my example, I assume defining chart maps to be "just" homeomorphisms to an open subset of $\mathbb{R}^n$ is wrong then, right?