Make the progressbar graphically more pleasing.

Now it is an actuall progressbar. It uses the '\r' character
in order to erase the entire line before each update.

It works in the IPython notebook as well.
Updated: preconditioner

Failure to create preconditioner now raises exception insteady of
warning.  Since preconditioning is really required, this saves the
routine from performing iterations that are likely not to converge.
Also allows for catching with try-except statement.
Added WignerNorm class

Creates normalization that makes any colormap a nonlinear colormap
center around zero.  Can be used in plots by calling norm=WignerNorm()
in a plot.
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, 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.
Turn preconditioner off by default in SS solver
Changes to setup to allow for configspec.ini, move of _logging.
Changed to point to new name of logging module.
Added __all__ to logging.
Stripped out old parsing logic, improved IPython detection.
Updated visualization

- Changed WignerNorm to MidpointNorm as the normalization is more
general.
-Enclosed function in try statement to catch loading if matplotlib not
available.
Fixed visualization

removed import of MidpointNorm from all
Removed MidpointNorm from visualization

Plan to make module dedicated to just matplotlib functionality.
ADDED: matplotlibutilities module

- Moved functions that enhance matplotlib (colormaps, normalizations
etc.) to new module. Module is imported with try-except statement since
functions require matplotlib which may or may not be present.

- Updated wigner_cmap to allow for custom colors that can be defined in
any format acceptable to the Matplotib.colors.ColorConverter.
Pushed try statement to module

try import now in matplotlib_utilities module
added dummy Normalize class
Added complex math cdef functions
ADDED: complex c-functions to codegen

Definitions of most standard math functions are overloaded to call the
complex c-versions
Add complex_math.pxi to package_data
inlined functions
Removed global numpy import