12v on/off switch to toggle state of two circuits
I agree, a microcontroller would be the easiest, as you will need de-bouncing for your switch, and a state machine of some kind.  There are other solutions, but they rapidly get more complicated.  If you want to dabble in a tiny amount of programming, that is probably the solution for you.  This dev kit is cheap, includes the programmer, and has access to enough pins for what you need.  You would need to add a connector, and have an external circuit with a couple mosfets, a couple diodes, and a couple relays.  Let us know whether this is a possibility for you, and I could draw it up in further detail.

http://www.mouser.com/ProductDetail/Texas-Instruments/EZ430-F2013/?qs=sGAEpiMZZMumoJNx8xCU5nFxmy%252b2zsQ4h%252bdVrWunAKI%3d

If you wish to do it completely without SW, this is the process that you would have to go through to design a logic circuit to do it, where the clock would be replaced by a debounced version of your switch.

http://www.allaboutcircuits.com/textbook/digital/chpt-11/finite-state-machines/