I would get my co-workers something nice for their desks. I have gotten funny things from co-workers in the past that I really got a kick out of, for example a tiny "computer guardian angel" for my computer - it's really just a glow-in-the-dark plastic angel that attaches to the top of the computer to "guard" it from crashing. It can also just be a nice mug or pencil holder or whatever if your co-workers are a bit conservative. If all else fails, bring them in a batch of homemade brownies or cookies packed up nicely in a basket.
Roommates: bath stuff is good - at least you can snoop around to see what kind of stuff they like. But if you're interested in getting to know them a bit better you could also give them a "gift certificate" for a meal together - whether home-cooked or you treating them at a restaurant.
Still trying to convince Henry the cat that knitting is a spectator sport!