Regular expressions & prop to bring back a better `String::has(Pattern)`

As asked by everyone...

`String::has(Pattern)` is much faster than `String::index_of(Pattern)` with regex. It can be optimized even more with `optimize_is_in`.

I'll be waiting after the test to make sure that it doesn't break anything.

What do you think of the doc/tests on the protected methods? I don't have any info to add, only tests and `requires`.

The only TODO would be to implement subexpressions; to get the the substrings of the parenthetical subexpressions of a single match. It is not the most common use but could be useful in some compilers.
On sent le fervent amateur de c/python :)

Quelques alternatives prises chez la concurrence:

* `system.text.regularexpressions.regex` à la C# (lol)
* `regular_expressions` à la Eiffel (re lol)
* `matching` à la scala
* `regex` à la Java, PHP

J'ai rien contre `re` car court et ça colle avec la lib C sous-jaçante mais `regex` ou `matching` à la rigueur ressortiraient mieux dans les moteurs de recherche que `re`.