Finalize new API, more examples

The core part of pull #1225.
This neatly fixes issue 7260. 

Basically everyone (me included) forgets to set the global flag in a regex foreach. 
Coupled with the fact that `splitter` already cracks open regex to set global flag it's painfully obvious that global/local is an attribute of operation but not of the pattern itself.

Hence separate API calls, plus I use the opportunity to simplify the single match case to just get a range of submatches.

Also fixes issue 9579.