The problem isn't the hardware here, the problem is the software. Robots just aren't smart enough to perceive the world around them yet. People are working on it, but it's still very much in the research phase at universities. You should check out HERB at Carnegie Mellon (1), which is working on things just like this. A fun anecdote - all the students spent forever trying to get the robot to open a microwave (and keep in mind this is a highly controlled environment and they knew exactly where it was). Eventually they gave up and modified the microwave.
Robotics is really, really hard.