`core_ext/string/access.rb` test what we are documenting.

I also extracted the tests from a single bulk method into a separate test-case.
The new tests cover the API described in the docs.

There are two skipped tests, which are broken as of 2ef1fb2c455ca53a0c1e1768f50824926ce28bd3
* #to with negative Fixnum, position is counted from the end
* #from and #to can be combined

This was brought to my attention by #13627.

Closes #13627.
typo fix in test name. [ci skip].
Revert "Speedup String#to"

This reverts commit 2ef1fb2c455ca53a0c1e1768f50824926ce28bd3.

As described in PR #13627 this commit broke functionality when passing
a negative Fixnum to the `String#to` method:

```ruby
assert_equal "hell", s.to(-2)
```

Before the revert, this failed with:

```
  1) Failure:
StringAccessTest#test_#to_with_negative_Fixnum,_position_is_counted_from_the_end [test/core_ext/string_ext_test.rb:275]:
Expected: "hell"
  Actual: nil
```

This revert is to keep the functionality on `master` working.
If there is another way to get the performance benefit and keep
the documented functionality we can add that.

/cc @amatsuda @carlosantoniodasilva
create/drop test and development databases only if RAILS_ENV is nil

Closes #13625
Merge pull request #13629 from dmathieu/drop_test

Be more explicit about the default of db:drop and db:create