Well, I have implemented trading now, so you can trade with homemakers. What I have done also is create a work chart, basically it is a 2D grid putting NPC types (merchant, homemaker, etc.) versus item types (gem, tech, weapon, etc.)
Each grid square contains possibly a few interactions, with some grid squares empty. This represents what happens when the PC offers an NPC an item of the given type.
This work chart is designed to allow me to more easily get a handle on the possible item interactions. It is tempting to find a way to implement each interaction type (there are only 8 of them) and then just include those from each person, but in practice I won't do this because I want each grid square to actually feel unique; i.e., selling something to a merchant should have a bit different mechanic/feel/gameplay than selling an item to a person.
Instead, I will support each interaction type with some basic methods. All this is implemented in lua and the phrase engine so it's really not that hard to code it all customized anyhow. Right now I'm coding a simple lua function that determines the value of an item, based on the item's properties.
What all this means is just, basically, I've finally begun to allow for interesting "quest" interactions.