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.
I contemplated it and figured the SampleLocation function does the same thing with just a bit more work.
Do you think we should have it as a ease of use function?