Better texture handling and remove some suffix gl functions.

  SDL may load surfaces as rgba (usually png) or bgra (usually bmp),
so detect it and use the proper format internally if using the
surface as an OpenGL texture.
  Properly check vector bounds of some gl*Pixel* functions.
  Merge back some previously split gl*i and gl*f functions to receive
float arguments, as conversion to integer is exact, preferably to
simplify for more consistency.
  Add an extra sdl interface to convert a surface from a format
to another. Currently only listing a few format.
  Add extra definitions to audio formats, that should be a parameter
to sdl.open_audio format.