migrate to setuptools #346

 setup.py now uses setuptools instead of distutils.

 closes #346