Removed EDA_DRAW_FRAME::SetGalCanvasActive() [it may be misleading], added EDA_DRAW_PANEL_GAL::GetBackend().
Created a specialization of EDA_DRAW_PANEL_GAL: PCB_DRAW_PANEL_GAL.
Moved View related routines & fields from PCB_{BASE,EDIT}_FRAME & BOARD to PCB_DRAW_PANEL_GAL.
Fixed switching between GAL canvases error.
Minor changes (removed an unnecessary event handler and two function calls that had no real influence).
Initial version of GAL-based module viewer in pcbnew.
Fixed VIEW::SetViewport().
Added autozooming and display of the last chosen module for module viewer using GAL.
Fixed toolbar buttons for zooming in GAL canvas.
Removed a redundant pointer to EDA_EDIT_FRAME.
TOOL_ACTIONs are automagically registered by TOOL_MANAGER upon its construction.
Alternative approach to handling events and commands by TOOL_DISPATCHER.

Event handlers are (dis)connected depending on the active view.
TOOL_DISPATCHER inherits from wxEvtHandler, so now it receives events directly instead of being fed by external handlers.
Rework to support multiple views with OpenGL GAL canvas.
Reduced number of switched events, allowing to use VIEW_CONTROLS, even if there is no extra event dispatcher.
FOOTPRINT_VIEWER_FRAME handles events from toolbar buttons and hot keys.
GAL view in pad properties dialog - initial version.
bugfix: pads edited with properties dialog were not refreshed.
bugfix: changing track width/via size using the dropdown menu when custom size was enabled did not change anything.
Next/previous footprint toolbar buttons are handled in the Module Viewer using GAL canvas.
Grid offset is recomputed only when settings are changed.
Code formatting and cleaning.
Initial version of the GAL-based Module Editor.