Make setuptools optional

If setuptools is not available, everything should still work. The
user just won't be able to install the package in development mode.