only run citext_test if the connection supports_extensions?.

This will keep the test suite passing with older PG installations.
require dependency to execute a single test from xml_serialization_test

When the tests are executed in order, the dependency is loaded at the right time.
However this makes it impossible to execute a single test later down the line.
Let's require the dependecy at the beginning to get them working independent of the order.

This resolves the following error:

```
$ ARCONN=postgresql ruby -Itest /Users/senny/Projects/rails/activerecord/test/cases/xml_serialization_test.rb -n test_to_xml
Using postgresql
Run options: -n test_to_xml --seed 51819

E

Finished in 0.081320s, 12.2971 runs/s, 0.0000 assertions/s.

  1) Error:
DatabaseConnectedXmlSerializationTest#test_to_xml:
NameError: uninitialized constant DatabaseConnectedXmlSerializationTest::REXML
    /Users/senny/Projects/rails/activerecord/test/cases/xml_serialization_test.rb:226:in `test_to_xml'
```

/cc @tgxworld fyi