broke out Interaction code into separate file
updated interaction @type
interactions working pretty well