detect opengles, and add options for profiling
refresh toolbar only if needed
Establish S52 PLIB default colour scheme.
Merge branch 'master' of https://github.com/OpenCPN/OpenCPN into optimum-merging
Revert "look up correct color scheme index if not set"

This reverts commit 368917ff6a5d4217b93b8f5ed777a8ad2943ed68.
avoid crashing on start if opengl extensions cannot be loaded
Merge branch 'master' into optimum
Merge branch 'optimum-merging' into optimum
major rework of framebuffer object and raster chart rendering

These changes greatly improve performance for
- idle cpu (cached texture works in all modes even rotated) if the viewport didn't change
- opengles (embedded systems) use different formats for texture rectangles
- overzoom uses floating point coordinates for sub-pixes alignment to avoid wobbling
- reduced video memory use, only needed mipmaps are loaded
- many items (routes, waypoints tides etc) can take advantage of framebuffer object
- memory use is based on bytes rather than textures because of different sizes for mipmaps
- previous version with basemult caused a lot of memory traffic to gpu
Merge branch 'optimum-merging' into optimum

Conflicts:
	include/glChartCanvas.h
	src/glChartCanvas.cpp
remove comment
remove unneeded changes
more uneeded changes