support glDrawBuffers

I feel very depressed reading this, but seems like there is no other way to avoid dynamic memory allocation and array push here :/ If there was some way around generating garbage here, that'd be awesome..