Follow up from #1735118: Convert Field API to CMI
Convert array syntax to object syntax in existing code, add type hints for $field & $instance arguments across core functions, update docs.
Will probably be easier in series of patches by module / groups of modules. This can either become the META or use a couple of follow ups within this issue itself.