diff --git a/__init__.py b/__init__.py
index 4be194803d5cf1ffb322accd861cac68caacb01f..102f743a29909f31a486bfeca1e096ba91b6dfe5 100644
--- a/__init__.py
+++ b/__init__.py
@@ -24,6 +24,8 @@ from __future__ import division
 import matplotlib as mpl
 mpl.use('Agg')
 
+from .version import __version__
+
 import dummys
 
 # it is important to import config before d2o such that NIFTy is able to
diff --git a/config/nifty_about.py b/config/nifty_about.py
index f6b91843115f9c288e5ac67c6499674c2c9efb97..3e34608dbbce181c26ffef7996977b971fa5d6cd 100644
--- a/config/nifty_about.py
+++ b/config/nifty_about.py
@@ -23,8 +23,7 @@ from sys import stdout as so
 import os
 import inspect
 
-__version__ = "1.0.7"
-
+from nifty import __version__
 
 
 class switch(object):
diff --git a/d2o_config b/d2o_config
new file mode 100644
index 0000000000000000000000000000000000000000..3fb18a2ede1b45c5e1b281158b66fa7d8ae8684a
--- /dev/null
+++ b/d2o_config
@@ -0,0 +1,6 @@
+[DEFAULT]
+mpi_module = MPI
+mpi_init_checks = True
+default_distribution_strategy = fftw
+default_comm = COMM_WORLD
+
diff --git a/nifty_config b/nifty_config
index 313fbe077dc438989851ff205239547506ce6c9c..5595ad49bcf0463efa129c5c2958c02e5ff74cda 100644
--- a/nifty_config
+++ b/nifty_config
@@ -1,20 +1,9 @@
-## nifty configuration
-##
-## errors colour code
-31
-## warnings
-1
-## warnings colour code
-33;1
-## infos
-0
-## infos colour code
-32
-## multiprocessing
-1
-## hermitianize
-1
-## lm2gl
-1
-##
-##
\ No newline at end of file
+[DEFAULT]
+use_libsharp = True
+use_healpy = True
+verbosity = 1
+fft_module = pyfftw
+default_comm = COMM_WORLD
+mpi_module = MPI
+lm2gl = True
+
diff --git a/operators/__init__.py b/operators/__init__.py
index 4ebeb6ad203aa819f23b140c45ec98b4070c5e59..c9b34eb874fb481bd44afd855b660c805e2f3912 100644
--- a/operators/__init__.py
+++ b/operators/__init__.py
@@ -38,7 +38,5 @@ from nifty_probing import prober,\
                                 diagonal_prober,\
                                 inverse_diagonal_prober
 
-from nifty_los import los_response
-
 from nifty_minimization import conjugate_gradient,\
                                steepest_descent
\ No newline at end of file
diff --git a/setup.py b/setup.py
index f4f3cab4d595484a6d5554abafa43e6aa13e254c..2c428399bca76423c7f387912e391bf498b4af78 100644
--- a/setup.py
+++ b/setup.py
@@ -19,28 +19,13 @@
 ## You should have received a copy of the GNU General Public License
 ## along with this program. If not, see <http://www.gnu.org/licenses/>.
 
-from distutils.core import setup
-#from Cython.Build import cythonize
-from distutils.extension import Extension
-from Cython.Distutils import build_ext
-import sys
+from setuptools import setup
 import os
-import numpy
-
-include_dirs = [numpy.get_include()]
-
-#os.environ["CC"] = "g++-4.8"
-#os.environ["CXX"] = "g++-4.8"
-
-ext_modules=[Extension(
-                   "line_integrator",
-                   ["operators/line_integrator.pyx"],
-                   include_dirs=include_dirs)]# "vector.pxd"],
-                   #language='c++')]
 
+exec(open('version.py').read())
 
 setup(name="ift_nifty",
-      version="1.0.7",
+      version=__version__,
       author="Marco Selig",
       author_email="mselig@mpa-garching.mpg.de",
       maintainer="Theo Steininger",
@@ -49,15 +34,22 @@ setup(name="ift_nifty",
       url="http://www.mpa-garching.mpg.de/ift/nifty/",
       packages=["nifty", "nifty.demos", "nifty.rg", "nifty.lm",
                 "nifty.operators", "nifty.dummys", "nifty.config"],
-      cmdclass={'build_ext': build_ext},
-      ext_modules = ext_modules,
-      #ext_modules=cythonize(["operators/line_integrator_vector.pyx"]),
-
       package_dir={"nifty": ""},
-      data_files=[(os.path.expanduser('~') + "/.nifty", ["nifty_config"])],
+      zip_safe=False,
+      dependency_links = [
+        'git+https://gitlab.mpcdf.mpg.de/ift/keepers.git#egg=keepers',
+        'https://gitlab.mpcdf.mpg.de/ift/d2o.git#egg=d2o'],
+      install_requires = ['keepers', 'd2o'],
+      data_files=[(os.path.expanduser('~') + "/.nifty",
+                   ['nifty_config', 'd2o_config'])],
       package_data={'nifty.demos' : ['demo_faraday_map.npy'],
                     },
-      license="GPLv3")
+      license="GPLv3",
+      classifiers=[
+        "Development Status :: 4 - Beta",
+        "Topic :: Utilities",
+        "License :: OSI Approved :: GPLv3 License",
+    ],)
 
 
 
diff --git a/version.py b/version.py
new file mode 100644
index 0000000000000000000000000000000000000000..8dfd91623a8ae733369d500056f9fe78d070597d
--- /dev/null
+++ b/version.py
@@ -0,0 +1,7 @@
+# -*- coding: utf-8 -*-
+
+# Store the version here so:
+# 1) we don't load dependencies by storing it in __init__.py
+# 2) we can import it in setup.py for the same reason
+# 3) we can import it into your module module
+__version__ = '2.0.0a1'
\ No newline at end of file