MEP22 Navigation toolbar coexistence

This version of the MEP22 implementation https://github.com/matplotlib/matplotlib/wiki/Mep22#implementation 

The proposed solution is to take the actions out of the `Toolbar` and the shortcuts out of the `Canvas`. This actions and shortcuts will be in the form of `Tools`.

A new class `Navigation` is the bridge between the events from the `Canvas` and `Toolbar` and redirect them to the appropriate `Tool`.

@OceanWolf 
The event framework has to remain in `FigureManagerBase`. If you want, later it can be addressed with other MEP. That is too big of a change to be included in this MEP.
I know it is tempting to solve all the problems in one shot ;).

**Keep in mind** the MAIN GOAL is to make it easy to create `Tools`, and `Toolbars`, and to reconfigure them. `Navigation` is just a side effect needed to get there.
I think we are there, we attain the main goal, currently we are just sanding the corners to see if the core developers like what they see.