Add json_class support w/o JSON for most types
Use consts for class strings
mutate the incoming hash

I'd rather not, but this object should be local to the caller at this
point so it seems less bad than creating a bunch more objects
add fallback deserialization to hash for Resources
allow lookup of resources without symbol creation
switch from JSON.parse to JSONCompat
rdoc json compat methods
[CHEF-3863] improve error compat with old impl.