Include fixes from Tim Golden to get it to run/build on Python 3.
Get tests mostly working (betterwalk -> scandir).
Fix bug in walk() noticed by tests.