Repository: microsoft/Qcodes

Issue:
Unable to install qcodes after uninstalling it
Uninstalling and installing qcodes again (with `pip install -e .`) results in the following exception:

```
(qcodes3) C:\Users\Administrator>pip list -e
Package             Version Location
------------------- ------- ------------------------------------------------------------
plottr              0.0.1   c:\users\administrator\onedrive\bf4\code\plottr
pytopo              0.0.1   c:\users\administrator\onedrive\bf4\code\pytopo
qcodes              0.1.11  c:\users\administrator\onedrive\bf4\code\qcodes
qdev-wrappers       0.1     c:\users\administrator\onedrive\bf4\code\qdev-wrappers
StationQ            0.1     c:\users\administrator\onedrive\bf4\code\stationq
v0-characterization 0.0.1   c:\users\administrator\onedrive\bf4\code\v0_characterization
You are using pip version 10.0.1, however version 18.1 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.

(qcodes3) C:\Users\Administrator>pip uninstall qcodes
Uninstalling qcodes-0.1.11:
  Would remove:
    c:\programdata\anaconda3\envs\qcodes3\lib\site-packages\qcodes.egg-link
Proceed (y/n)? y
  Successfully uninstalled qcodes-0.1.11
You are using pip version 10.0.1, however version 18.1 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.

(qcodes3) C:\Users\Administrator>cd OneDrive\BF4\Code\Qcodes

(qcodes3) C:\Users\Administrator\OneDrive\BF4\Code\Qcodes>pip install -e .
Obtaining file:///C:/Users/Administrator/OneDrive/BF4/Code/Qcodes
    Complete output from command python setup.py egg_info:
    get_version: 0.1.11
    running egg_info
    writing qcodes.egg-info\PKG-INFO
    writing dependency_links to qcodes.egg-info\dependency_links.txt
    writing requirements to qcodes.egg-info\requires.txt
    writing top-level names to qcodes.egg-info\top_level.txt
    reading manifest file 'qcodes.egg-info\SOURCES.txt'
    writing manifest file 'qcodes.egg-info\SOURCES.txt'
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "C:\Users\Administrator\OneDrive\BF4\Code\Qcodes\setup.py", line 109, in <module>
        module = import_module(module_name)
      File "C:\ProgramData\Anaconda3\envs\qcodes3\lib\importlib\__init__.py", line 126, in import_module
        return _bootstrap._gcd_import(name[level:], package, level)
      File "<frozen importlib._bootstrap>", line 994, in _gcd_import
      File "<frozen importlib._bootstrap>", line 971, in _find_and_load
      File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
      File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
      File "<frozen importlib._bootstrap_external>", line 678, in exec_module
      File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
      File "C:\ProgramData\Anaconda3\envs\qcodes3\lib\site-packages\pyqtgraph\__init__.py", line 13, in <module>
        from .Qt import QtGui
      File "C:\ProgramData\Anaconda3\envs\qcodes3\lib\site-packages\pyqtgraph\Qt.py", line 44, in <module>
        raise Exception("PyQtGraph requires one of PyQt4, PyQt5 or PySide; none of these packages could be imported.")
    Exception: PyQtGraph requires one of PyQt4, PyQt5 or PySide; none of these packages could be imported.

    *****
    ***** package matplotlib must be at least version 2.2.3.
    ***** Please upgrade it (pip install -U matplotlib or conda install matplotlib)
    ***** in order to use MatPlot
    *****


    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in C:\Users\Administrator\OneDrive\BF4\Code\Qcodes\
You are using pip version 10.0.1, however version 18.1 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.

```



Discussion:

Resolving patch:
diff --git a/setup.py b/setup.py
--- a/setup.py
+++ b/setup.py
@@ -103,6 +103,13 @@ def readme():
 *****
 '''
 
+othererror_template = '''
+*****
+***** could not import package {0}. Please try importing it from 
+***** the commandline to diagnose the issue.
+*****
+'''
+
 # now test the versions of extras
 for extra, (module_name, min_version) in extras.items():
     try:
@@ -114,3 +121,5 @@ def readme():
     except ValueError:
         print(valueerror_template.format(
             module_name, module.__version__, min_version, extra))
+    except:
+        print(othererror_template.format(module_name))


Test patch: