Keep core extensions in separate file(s)

I found a String extension snuck into `decode.rb` so I moved it to the right place.