added basic line in support; format is playing_speaker.line_in(source_speaker)