adjust `import_pylab`

it's all or nothing now, not all or some.
Now `pylab_import_all=False` should mean that *no* symbols are added to the user namespace.

This also removes `figsize` from the pyplot namespace, which is weird and confusing.
add `%pylab --no-import`

allows override of the import_all option when the magic is called
warn about names clobbered by `%pylab`
don't double-decorate in `flag_calls`
update pylab_import_all help string
add `%matplotlib` and `shell.enable_matplotlib`

Now `%matplotlib` / `enable_matplotlib` do the bulk of the work. `%pylab` / `enable_pylab` just add namespace population on top of that.

Related changes:

- remove `pylabtools.activate_pylab`
- shorten backend message to just `using matplotlib backend: <backend>`
- only show backend message when magics are called with `auto`,
  never from Python methods or when backend is explicit.
- pylab clobber warning is only displayed in the magic, not the Python method.
update pylabtools tests
fix some failing test
include sorted list of backends
Merge pull request #2 from ivanov/pylab-no-import

fix 2 failing tests and add programmatic support for backend
update enable_pylab, etc. for inprocess kernel
remove extra self in InProcess.enable_matplotlib
fix pylab test in in-process kernel

welcome message has changed
Merge pull request #3568 from minrk/pylab-no-import

new %matplotlib magic, quieter %pylab magic

%matplotlib is a magic which sets up integration but does no imports
%pylab now is now as verbose about announcing itself.