Revert "Merge pull request #1645 from vanstee/string-split-repeats"

This reverts commit fb30101632f8e1ee94bb770ff858791aa6cba6a3, reversing
changes made to c348eb7cc58459c3ff8f117c0e7a96384ad7734b.
Enum.slice returns nil when start is out of bounds
Accept the `trim` option when splitting strings

By default `trim` will be set to true. Because `:binary.strip` only
removes empty strings from the end of the result, we have to apply a
filter to remove empty strings from the beginning before returning.
Accept the `trim` option for `Regex.split/3`

By default `trim` will be set to true. However, since the `global` option
was implemented with the `parts` option (`{ :parts, :infinity }`), we
have to apply a filter to the final result to support `trim`.
Merge pull request #1655 from ericmj/fix-enum-slice-oob

Enum.slice returns nil when start is out of bounds
Merge pull request #1651 from vanstee/string-split-trim

Add support for `trim` option to `String.split` and `Regex.split`
Optimize split implementation
Make it clear Dict.merge expects an enum that yields two-item tuples
Add bit about documentation style to CONTRIBUTING
Merge pull request #1658 from pminten/doc-guidelines-in-contributing

Add bit about documentation style to CONTRIBUTING
Update record docs style
Add Enum.concat/1,2 and Stream.concat/1,2
Deprecate List.concat/1,2
Replace occurrences of List.concat/1,2 with Enum.concat/1,2
Move the List concat tests to Enum
Add support for enumerables of enumerables
Add tests for Stream.concat/1,2 and Enum.concat/1,2
Merge pull request #1660 from betawaffle/enum-concat

Add Stream.concat/1,2 and Enum.concat/1,2
Add note to Enum to clarify what's returned

In particular clarify that infinite streams don't work with many of the
functions.
Merge pull request #1662 from pminten/note-about-enum-list-return

Add note to Enum to clarify what's returned