Json api sub behaviour

It is still less than ideal that serializer_from_block_or_class returns a hash instead of a serializer, but it looks like the json_api can be fixed without altering that behavior by just taking advantage of #top knowledge.