Improved system for post processing shaders.

This is the system for improving configurability of shaders from a user perspective.

This doesn't have multiple render stages in the PP shader backend, but is more centered towards bringing configurations of the shaders options to the UI.
Really not a fan of this class name. It should be a noun instead.

PostProcessingShader?