Properly implement String#split

Correctly performs all the examples from the MRI rdoc.