Simple and clean home automation project needs your help...

A lot of people get away with violating codes because they already live in a house and they are making minor modifications. It's still illegal, but slips under the radar. In new construction, you are under a lot more scrutiny. How is your city/county electrical inspector going to feel about nonstandard light switches and control systems? Will he expect them to be UL (Underwriters Laboratory) listed? Will your system meet the NEC (National Electrical Code)? Will you satisfy UBC (Universal Building Code) requirements? Part of the reason commercial home automation systems are so expensive, is because they have to hire lawyers to interpret the metric truck-load of laws they have to comply with. Are you prepared to similarly retain or become a legal expert?

Realize that if someone is injured or killed in your house, even after you sell it, you could be spending a very long time in federal prison. I'm not just talking about direct electrocution or fire, but also consider if someone got injured in the dark because your system malfunctioned when they tried to turn the lights on. For sure don't expect your homeowner's insurance to cover it.

But, assuming you have complied with all local and federal laws, I would do as Graynomad suggests: have the system be 100% operable via dumb electromechanical latching relays and low voltage switches. Momentary press a switch one way to energize one coil and latch one way, momentary press the switch the other way to energize the other coil and latch the other way. Then add circuitry to allow your Arduino to sense whether a given relay is ON or OFF, and add more circuitry to allow the Ardiuno to energize one coil or the other. Now if you unplug your Arduino, everything still works.

BTW -- while codes are more relaxed when dealing with low voltage, you still have to interface with mains / line voltage at some point. For example, you can't have low voltage wires in the same enclosure as line voltage unless the low voltage wire insulation is rated to 600V or more, and unless all connections (wire nuts, screw terminals, etc) maintain a separation between low- and line-voltage by a certain minimum distance. There are other gotchas too, these are just a couple of examples. You have some homework to do.