fix string encoding issue to work with ruby1.9

In ruby1.9, strings are freaking complicated.

I twice added the line
```ruby
puts "hash = '" + hash + "' (" + hash.length.to_s + ", " + hash.encoding.to_s + ")"
```
and got different results:
* generated, `hash = '20dd82' (6, ASCII-8BIT)`
* given, `hash = 'foo' (3, UTF-8)`
* from url, `hash = '20dd82' (6, US-ASCII)`

This commit forces everything to be stored as UTF-8 in the database in ruby1.9 and does nothing differently in ruby1.8.