Fixes #1245. Undefined method exception when using compass watch in jruby 1.7.8.  This is actually a regression from native Pathname addition.  Some methods which should use class of caller was instead using Pathname.  This is far from clear since some Pathname methods do seem to use Pathname and not subclass.
Unbreak tests due to utf-8 chars in non-coded utf-8 file
Merge with jruby-1_7
Remove redundancy in string comparison methods

This change removes a redundant RubyString type check and branch in
RubyString's `compareTo` method. It also combines the `op_cmp19` and
`op_cmpCommon` methods, as there is no longer a need to separate these
paths (since the Ruby 1.8 `op_cmp` method is no more). Additionally,
calls directly to `op_cmp19` are replaced with calls to `op_cmp`.
Implement JRuby equivalent of `invcmp`

This method performs an inverse comparison (comparing other with self)
with a recursive call gaurd.
Use `invcmp` for String and Time `<=>` operators