Pluggable tokenizer

Loads and uses a pluggable tokenizer. Comes with a sane default tokenizer.

@willkg r?
I wouldn't do this. "split" is pretty common in other contexts, so it's better to do:

```
import re
```

and then call it with ``re.split``.