refactored Strategy code, began binary search optimisation