It works by gathering voltage and current data to calculate power. Voltage is measured from an AC/AC adapter wall plug (which also supplies power to the unit). Current is measured from 3 split core current transformers. Two for each phase of incoming power to my apartment, and another to put on a wire connected to any of the circuit breakers in the panel to measure individual loads (like Heating/Cooling, Washing Machine, Bedroom, etc.).
The brains of the unit will be a PIC18F26J13. I like PIC's because I'm familiar with them, and this one has a 12-bit ADC which is handy for those voltage/current measurements. It also has plenty of I/O to interface with extras. Extras like an LCD! Which is where power info will be displayed locally. However, in order to have a web server with pretty graphs I'll need to send the data elsewhere. One of the cheapest ways to do that is with one of those nRF24L01+ modules that you can get for about a $1 each.