Add specs for recursion guard on `<=>`

This adds specs to Time and String to ensure that the reverse comparison they
perform as part of the `<=>` method does not result in a stack overflow.
Related to [Ruby Bug test suite (for the specific case of comparing a Time
object to a String object)
[here](https://github.com/ruby/ruby/blob/trunk/test/ruby/test_comparable.rb#L73)