Added new logging and settings support, started refactoring debugs.

This change enables the use of Python standard logging, and backs it by a new qutip.settings entry. A few instances of classic ``if debug: print`` style logging have been refactored. The new ``qutip.settings`` entry is based on [configobj](http://configobj.readthedocs.org), with a fallback to classic ``~/.qutiprc`` parsing if that library is not available. Errors in the new functionality introduced by this commit are also logged, and can be accessed by setting up ``logging.basicConfig`` *before* importing QuTiP. The optional configobj dependency should almost always be met, since it's shipped with matplotlib.
I don't think we should warn that configobj is missing unless the file "~/.qutiprc". Because as it stands here, all users will see a lengthy warning message about configiobj not being available. In IPython notebook, I currently get this warning message when importing qutip:

    WARNING:qutip.settings:configobj missing.
    Traceback (most recent call last):
      File "/Users/rob/py-envs/py3.4-devel/lib/python3.4/site-packages/qutip/settings.py", line 75, in <module>
        import configobj as _cobj
    ImportError: No module named 'configobj'
    ERROR:qutip.settings:Error loading RC file.
    Traceback (most recent call last):
      File "/Users/rob/py-envs/py3.4-devel/lib/python3.4/site-packages/qutip/__init__.py", line 156, in <module>
        qutip.settings.load_rc_file(qutip_rc_file)
      File "/Users/rob/py-envs/py3.4-devel/lib/python3.4/site-packages/qutip/settings.py", line 90, in load_rc_file
        raise ImportError("Config file parsing requires configobj. Skipping.")
    ImportError: Config file parsing requires configobj. Skipping.