Split up the intertwined mess of std.regex.

Make a package in std.internal.regex.

The docs and API still stay in one file.

With time and refactoring more internals may be exposed such as parser, each engine explicitly
and the sample generator (generator.d).

Okay, this is a reboot of #2216

Caveats: due to package protection only working with nested packages, a lot of stuff became publicly accessible.
https://issues.dlang.org/show_bug.cgi?id=2529
Nitpick: How come this line is here but missing / removed from the other files?