Improve caching
Implement a brand new search algorithm

A bit slower than before, but way more effective