It pretty much requires the -capability- to do direct democracy on a technical level (even if that's largely unfeasable; you need the ability to implement proxy voting at a reasonable level of granularity). Beyond that...it relies on two entities -- the proxy voters themselves, and "category authorities"; the CAs are responsible for saying what categories a bill goes into, and a user selects which CAs they trust, and the ratings therof select, for any bill, which voter gets to cast their proxy.
The main one is a question of security vs accountability -- you need to be able to -use- a vote at any time it becomes relevant...but you want to make sure that every vote is attached to a real person, and that things are impossible to stuff.
The best way I can see to do this, not being a cryptographer, is to have two basic systems, with the staff of one being unable to ever work for, or share information with, the other one (and both responsible, really, for not looking at the contents of their systems; this is just a precaution): one system would map actual voter information to unique ids, one per voter.
The other system, which would trust the first one on whether a voter was real or not, would be responsible for keeping the actual votes secure, and telling the world how many votes each proxy voter had on any given bill (possibly only after the proxies and any direct voters had voted -- may not want to encourage too much diplomacy, after all), or at least tell the world how the votes on any given bill went.
Another problem, which I don't have a ready solution to, is determining what votes come to the "floor" in the first place; if someone has a reasonable solution to this, I'd like to hear it (though petition is one possiblity, I guess).