Allow custom shaders & pipelines

Allowance for custom shaders; probably for the draw2d api, that would mean custom fragment shaders