Make `String#repeat` throw when called on `undefined` or `null`

Fixes #164. Closes #165.
Merge pull request #165 from mathiasbynens/checkobjectcoercible

Make `String#repeat` throw when called on `undefined` or `null`
Revert "use `substr` instead of `slice`"

This reverts commit 2e29f80615c44f35d70a1c2396639743746b3a04.