When I make switches quick, I simply make a brush, split it in two, and make on half for activate and the other for de-activate.
You could also parent the button to func_door and such, so they move around,, uh, I'll show you.
In the front, there is a button, paranted to a func door.
That button ACTIVATES the light (for example), but it also activates the door so it slides up.
When pressing the other button, wich deactivates the light, the door slides down again, and you have access to the actovator again.
Aslo, behind the buttons, the real brush with the switch texture is placed.
Or, you could just put that texture on the deactivator button.
The door and the ACTOVATOR needs to be nodraw of course.