parser, glfun: shader reading function now in parser file

Seems like a small commit? As it turns out, excessive motivation (in this case cold beer) can cause performance degradation. Cheers! And cheers to the folk(s) who wrote the shader reading code. I'd have used 'while( end_of_file_nowhere_in_sight ) concat this string to that string', implemented directly in the glfun.c. And I thought it was a bad idea to read files from anywhere else not called parser.c