Add depth test and depth func to the state.
Implemented glEnable, glDisable and glIsEnabled.
Desktop gl implementation syncs the scissor and viewport on clear.