added Rabin-Karp string matching algorithm