If you can program Javascript, look at
TouchControl. The programming interface is very different from URC, but once you get the hang of it you'll be able to handle your whole house (all rooms) with a single program and any controller can operate any room. For example, you only need to layout the cable box screen once. Screens are easy to reuse in multiple rooms, simply swap the room name, background, and the IR or control target. There are frequent updates and the author is responsive. If you make a good case for a new feature, the feature will appear in a few weeks or less.