I have done some playing with your code and made a serializable version of the bulb and gateway bulb classes and created a command line app that lets me either run a scan and update the Bulbs.xml and Gateways.xml files... or I can just issue commands on the command line by Bulb label, to issue commands to individual bulbs. Let me know if this is something you would be interested in and I can send you over the code.