Updated to support awesome direct RECURSIVE json-array dictionaries mapping to objects with possible custom-class properties