Fix exclude list on python 3.2+

imp.get_tag() is only available on 3.2+. Since 2<x<3.2 are EOL we shall
not worry.
We could implement a local get_tag(), but the point is moot: this
compilation tactic with __pycache__ subdirs and versioned import files
is new to python 3.x, so hasattr() is sufficient.
Commit the fix we did when testing python3

I shall `hg status` before submitting PRs.
I shall `hg status` before submitting PRs.
I shall `hg status` before submitting PRs.
Chase upstream
Merged in mesocody/setuptools (pull request #72)

Fix exclude list on python 3.2+
Normalize syntax
Extract method for generating exclude names
Generate the filenames more directly.
Extract calculation of base path
Add comment
Construct exclusions as a set
Add docstring for get_exclusions. Just return the set as it is a sized container.
Extract method for calculating namespace packages for single_version_externally_managed
Extract method for computing parent packages of a package
Extract path calculation for paths
Rewrite package traversal as a generator expression
Reindent
Use itertools.product for a cross-product of two iterables
Reorganize imports
Incorporate the exclusion path in the _exclude function.
Return the exclusions directly