refactor DumbLSH with strategy pattern