Allowed names function added. Error message changed.
Code reorganization. Tests added.
setup.py updated
requirements.txt added
README.md updated