Supports table_name prefix/suffix for add_foreign_key

## Problem:

The following issue exists when `ActiveRecord::Base.table_name_prefix` is set and `add_foreign_key` is called.

Assume the following code:
```ruby
ActiveRecord::Base.table_name_prefix = 'reenhanced_'

add_foreign_key("clients", "records", {:name=>"clients_record_id_fk"})
```

When `rake db:migrate` is run:
```
rake aborted!
NativeException: java.sql.SQLSyntaxErrorException: ORA-00942: table or view does not exist
: ALTER TABLE "REENHANCED_CLIENTS" ADD CONSTRAINT "CLIENTS_RECORD_ID_FK" FOREIGN KEY ("RECORD_ID") REFERENCES "RECORDS"("ID")
```

## Solution:

This change will allow the `add_foreign_key` method to work with table name prefixes and suffixes.
With this code, it is now possible to change the suffix or prefix of tables without having to modify your migrations.

---

Closes reenhanced/oracle-enhanced#1

LGTM given by: @codenamev

```text
Squashed commit of the following:

commit b1c0fedfca69cde2d20ea362ea738afd422e516e
Author: Nicholas Hance <nhance@reenhanced.com>
Date:   Tue Dec 11 11:16:39 2012 -0500

    typo

commit 6f776e4589a2a0e6873d1d624428db29bfae904d
Author: Nicholas Hance <nhance@reenhanced.com>
Date:   Tue Dec 11 11:07:25 2012 -0500

    Supports table_name_suffix for add_foreign key

commit db3c2655a7717905443348f576e4a278942ce903
Author: Nicholas Hance <nhance@reenhanced.com>
Date:   Tue Dec 11 10:44:34 2012 -0500

    Support table prefix for add_foreign_key
```