19188

Critical fixes: 
- Fixes half-baked error handling and a missing 'return' in OGlProgram.h
- Removes dependency on C99 functions apparently absent on WIndows (and the need for that dangerous remainder == fmod hack - don't take it hard on whoever did it; the spec is rather subtle)

    printf("%f\n", remainder(+0.75f, 1.0f)); // output: -0.25 (!)
    printf("%f\n", fmod(+0.75f, 1.0f)); // output: 0.75

Further changes: Tidying on formatting and naming.

I did not make the stars move again, as it would conflict with changes in 19223 (they move there).
The branch has been reconverged and just been pulled onto the master for you to have an easy merge.