def remove_answer(question_node)
				#self.survey = question_node.survey

				# The node from answer from the parent question
				self.survey.node_maps.select { |i|
					!i.marked_for_destruction? &&
					i.node == self && i.parent && i.parent.node === question_node
				}.each { |answer_node_map|
					answer_node_map.send((answer_node_map.new_record?)? :destroy : :mark_for_destruction )
				}
			end
def remove_answer(question_node)
				#self.survey = question_node.survey

				# The node from answer from the parent question
				self.survey.node_maps.select { |i|
					!i.marked_for_destruction? &&
					i.node == self && i.parent && i.parent.node === question_node
				}.each { |answer_node_map|
					answer_node_map.send((answer_node_map.new_record?)? :destroy : :mark_for_destruction )
				}
			end
By default - answers build off the original question node

 This allows us to easily override the answer removal behaviour for different answer types