Abstracting graphics and data source

Set apart of basic and common functionality for graphics and data
source.
Fixed: MSVS compatibility
Fixed: image cashing
Fixed: Amiga data source example
Fixed: Amiga colors
Fixed: heap corruption
Merge branch 'Abstracting-graphics-and-data-source' of https://github.com/wdigger/freeserf into Abstracting-graphics-and-data-source