I18n.locale= and default_locale= now fail given junk values.

Only strings and nil allowed.
Merge pull request #244 from semaperepelitsa/rescue_nil

locale= and default_locale now raise when setting a truthy value that
cannot be converted with #to_sym.

Conflicts:
	test/i18n_test.rb
Fix pattern to only load files under our test directory
Require with full file path to mimic rake so that tests pass on Ruby 1.8.7

Since the require path is different simple_test file will be loaded
twice in Ruby 1.8.7, and the suite then fails with duplicated test names
being defined.

The solution for now is to require the file with full path, which mimics
how rake requires the files and thus only loads it once. This seems to
work with 1.8.7 and 1.9.3, but can be dropped as soon as 1.8.7 support
is removed.
Officially drop support to Ruby 1.8/REE and Rails < 3.2
Remove string interpolation backport for Ruby 1.8

Now that 1.8 has been officially dropped, we can remove this extension.
Remove more dead code related to Ruby version compatibility
Remove deprecated :default_exception_handler method
Remove deprecated normalize_translation_keys
Remove deprecated :rescue_format from exception handler
Refactor exception handler is_a? checks
Remove the need for TokyoCabinet and Rufus dependency to run the tests

The key-value store requires a very specific API from the store, and we
can use a simple hash object to match that contract on our tests, so
there's no need for yet another dependency on top of it.
Remove rufus and old AR support from benchmark script

Remove warning: `*' interpreted as argument prefix'`
Remove deprecation of enforce_available_locales and default it to true

Ensure super is called from setup/teardown methods across the test suite
so that the base config/cleanup works as expected.