Added JUnit tests for fusion module components. Changed names and classes to better reflect what they actually do and to localize logic.