Optionally use setuptools in setup.py.

- setuptools allows extra functions like 'python setup.py develop'
- Fall back on distutils, which is part of python, if setuptools is
  not available