Renderer; fix #174; the behaviour of the window config is to reflect the "real" config you were given into the .config, which when you asked for no depth buffer and were given one anyway, this would cause depth tests and other various flags to be used where it shouldn't be. Instead, use the asked_config that we requested in the first place - and secondly this addition adds a state cache for the depth_func and makes sure that the first instance of enabling depth test goes through the state, otherwise future calls might "be the same" (off) when that is not the case.