Fixed JSON coder when loading NULL from DB

This fixes an edge case with the new JSON coder introduced in #16059.

```irb
>> JSON.load(nil)
# => nil
>> ActiveRecord::Coders::JSON.load(nil)
TypeError: no implicit conversion of nil into String
	from /Users/godfrey/.rvm/gems/ruby-2.0.0-p353/gems/json-1.8.1/lib/json/common.rb:155:in `initialize'
	from /Users/godfrey/.rvm/gems/ruby-2.0.0-p353/gems/json-1.8.1/lib/json/common.rb:155:in `new'
	from /Users/godfrey/.rvm/gems/ruby-2.0.0-p353/gems/json-1.8.1/lib/json/common.rb:155:in `parse'
	from /Users/godfrey/.rvm/gems/ruby-2.0.0-p353/gems/activesupport-4.1.2/lib/active_support/json/decoding.rb:26:in `decode'
	from /Users/godfrey/Projects/oss/rails-chancancode/activerecord/lib/active_record/coders/json.rb:9:in `load'
	from (irb):4
	from /Users/godfrey/.rvm/rubies/ruby-2.0.0-p353/bin/irb:12:in `<main>'
```

This patch ensures `ActiveRecord::Coders::JSON.load(nil)` doesn't blow up and matches the 4.0 behavior. Perhaps there are better ways to write the test case, so I'd like to get a review from others. (cc @sgrif @matthewd)

We can also consider just changing that in `ActiveSupport::JSON.decode` directly, but I think that would open up a bigger can of worms. (It's hard to say what's the behaviour on that in 4.0, because it uses MultiJson and so it depends on which adapter and version you are using. The latest JSON gem adapter seems to blow up on `nil` values as well, which I consider the correct behaviour.) (cc @jeremy)