First pass at implementing influences. Needs some  DRYing up.