Adds base of strategy pattern