fix error in Call(callable) test case.

apparently the issue was hidden by Python 2 scoping rules, but the
test failed with Python 3.
use offset() instead of NoDataOffset()

NoDataOffset is only needed in places that are evaluated before
calling config(), e.g. at module import.
allow port/channel of Output() to be omitted
Try to use setuptools, fall back to plain distutils
Add encoding declaration to allow non-ascii chars in metadata
Ensure compiler output is in C locale

...so that library dirs can be parsed reliably.
normalize library dir paths.
convert images to indexed colors