Tabbed gtk3 figuremanager

When working with many figures, there is a need to "group" the figures.

This PR includes a new GTK3 backend that display the figures inside a notebook instead of separate windows.
The configuration of the figures can be rearranged by detach and reparent methods in the manager.
The single-window configuration is not ON by default, the user has to specifically set 
matplotlib.rcParams['backend.single_window'] = True
For this multi-figure functionnality become visible

One BIG advantage of this backend, appart from the fact of being multi-figure ;), is that with the new toolbar, there is the add_tool method, that allows the user to implement tools and integrate them to the toolbar without modifing the backend

At the same time I added, two new tools to the toolbar, for lines and axes management.
The lines tool that was with the GTK3 backend was not working due to the use of deprecated libglade.

I added the base classes needed to create the same functionnality with other backends.

I documented base classes following the numpydoc  (did my best).

The example is examples/user_interfaces/multifigure_backend_gtk.py