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.
Thanks for incorporating the new logging facility by @cgranade  in your PR. It looks great. However, the way you copied over the files from this PR into yours is not ideal, because it distort the contributor history for who wrote this logging feature in the project commit history.

The proper way to use this PR in your PR would have been to merge this into your PR, like this:

* First add @cgranade 's fork as a remote repository:

        $ git remote add cgranade http://github.com/cgranade/qutip.git
* Second fetch the branch which this PR is based on

        $ git fetch cgranade feature-logging
* Third, merge the feature-logging into your fork:

        $ git merge cgranade/feature-logging

This would preserve the commit history. I realize that this is tricky git usage and not at all very intuitive, but in the interest of preserving the commit history and contributor credits, I think it would be best if you reverted the last commit 67169c6b2f60e07a783a70993613f6a8bdd471d8 using

    $ git revert 67169c6b2f60e07a783a70993613f6a8bdd471d8

Then do the steps i described above to get this PR into your PR, and recommit the modification you did on top of this PR. Hope this is not too much of a hassle. Big thanks to both of you for your work and contributions to qutip!