Hybrid (native/ruby) pathname library

This approach is quite similar to how MRI does it.
A good part of the library is still written in Ruby and it would take a considerable effort to translate everything (plus, it might not be very worthy). I think this should be merged in a first step.

The binding `@path` <=> `path` Java field is done by setting `@path` in #initialize, is there a better way?

There are a couple TODOs left, to which some light on it could help me.

Updated version of `lib/ruby/1.9/pathname.rb` is HEAD of the `ruby_1_9_3` branch (only the require line changes from `pathname.so` to `pathname_ext` (is there a better naming, possible to differentiate `pathname.{rb,jar}`?
Should we add back the doc there? (in MRI, it was moved to `pathname.c`)

About the license, is it copied and adapted rightly?

Tests (`$ bin/jruby test/externals/ruby1.9/pathname/test_pathname.rb`) give:

```
263 tests, 520 assertions, 2 failures, 1 errors, 0 skips
```

The error is due to `IO.open` not being fully 1.9-compliant.
The first failure is `ENOENT` not raised with `File.realdirpath` (I will try to fix this).
The second failure is `ENOENT` being raised instead of `ELOOP` (symlink loop).

@headius what do you think?