I'm trying to create a simple multi-level package:

```
test_levels.py
level1/
        __init__.py (empty file)
        level2/
                __init__.py  (only contents: __all__ = ["leaf"])
                leaf.py

```

leaf.py:

```
class Leaf(object):
    print("read Leaf class")
    pass

if __name__ == "__main__":
    x = Leaf()
    print("done")

```

test\_levels.py:

```
from level1.level2 import *
x = Leaf()

```

Running leaf.py directly works fine, but running test\_levels.py returns the output below, 
where I was expecting no output:

```
read Leaf class
Traceback (most recent call last):
  File "C:\Dev\intranet\test_levels.py", line 2, in <module>
    x = Leaf()
NameError: name 'Leaf' is not defined

```

Can someone point out what I'm doing wrong?