1) Good to hear that someone actually needs my modifications

I really hope that most of my patches qualify for a future release of the Arduino IDE. But there will be a release of my IDE within the next 6 weeks.
3) programming by infection is a multi-hop reprogramming method we created for LumiNet. The idea behind LumiNet is that you don't have a single controller (like in most Arduino projects) but many (hundreds) of nodes with their own microcontroller. You could disassemble the network and reprogram every node via isp or UART. But what we do is different: a special node (called vector node) gets programmed via (software) UART and it stores the program code. Then this (vector) node is connected to the network and the payload propagates from one node to all its neighbors... like a virus. In that way the network remains unchanged and new program code can be uploaded to all nodes in a single step. This is especially handy for mobile applications (e.g. wearable computing) when you don't have a PC around you but you have 10 preprogrammed nodes with different payload. So programmin by infection is a combination of a program code dissemination protocol and a bootloader.
I have to compare power consumption. I will provide information about that in the next days.
LumiNet uses the attiny84 chip. This chip has limited I2C capabilities (the same is true for the attiny85).
But if you look in the datasheet in 14.3.4 Two-wire Mode you can see, that the USI of the attiny can do I2C (TWI) in hardware.
How important is I2C to your projects? Do you need I2C master or a slave functionality?
I did not test OneWire yet because I have no such devices. But I downloaded the lib from here:
http://www.arduino.cc/playground/Learning/OneWire
and the example compiles without problems. A short look in the sources tells me: this should work without any problems with LumiNet.