RFC: A faster string search algorithm, and an "index" function.

This is a faster string search function to address #3733. It should put julia on par with python, which is quite fast at this particular benchmark.

These versions do a byte-for-byte search, so I've left the original search functions in a as a more general-purpose fallback

I've also added a `index` function which works just like `search`, but returns just a start index rather than a Range object to avoid the overhead (it was about 30% slower otherwise).