Stop using shared GL contexts. Instead, use native OS surfaces.

r? @metajack