Actually, this looks suspect: 
https://github.com/mozilla/PyHawk/blob/master/hawk/__init__.py#L15

Within the package you depend on it being packaged. So, if someone unpacks your pyhawk package and installs it manually with `cp -r hawk /my/pythons/site-packages` then this line will stop working. 

Basically, the `__init__.py` file does too much. I would recommend you just write it like this:
```
__version__ = '0.1.0'
```

And then, in setup.py you add the following:
```
import re
import codecs

def read(*parts):
    return codecs.open(os.path.join(os.path.dirname(__file__), *parts)).read()

def find_version(*file_paths):
    version_file = read(*file_paths)
    version_match = re.search(r"^__version__ = ['\"]([^'\"]*)['\"]",
                              version_file, re.M)
    if version_match:
        return version_match.group(1)
    raise RuntimeError("Unable to find version string.")

...
setup(
    name="PyHawk",
    version=find_version('hawk/__init__.py'),
    url='https://github.com/mozilla/PyHawk',
...
```

See https://github.com/peterbe/mincss/blob/master/setup.py

Note there how I also [these lines](https://github.com/peterbe/mincss/blob/master/setup.py#L6-L11) which prevent a nasty setuptools bug that's going around at the moment.