Typecast default value when fetching directly

Currently, given:
```ruby
class ActsLikeAnInteger
  def to_i
    123
  end
end

class Account < ActiveRecord::Base
  property_set :settings do
    property :default_prop, :type => :integer, :default => ActsLikeAnInteger.new
  end
end
```

You get this behavior:
```ruby
account.settings.default_prop           # => 123
account.settings.default(:default_prop) # => #<ActsLikeAnInteger:0x007fcab2945708>
```

With this change, you get this instead:
```ruby
account.settings.default_prop           # => 123
account.settings.default(:default_prop) # => 123
```

@kbuckler @morten @eac