search now working. implementation sub-optimal. revisit. works as intended though, and it works bloody well. could just do with a lot of optimisation. #31