Temporal Weighted Query Model Implementation
Create abstract class/interfaces for all the phases and refactor current example implementations accordingly
Create abstract class/interfaces for all the phases and refactor current example implementations accordingly