Started working on the architecture for the strategy pattern