Merge pull request #23 from nlevitt/master

improve robustness, refactor, tweaks
debugging to and mitigation for problem "[Errno 98] Address already in use"