cache refactoring: Cleanup array length argument marshaling

Add shared function: _arg_cache_array_len_arg_setup for use
with both to and from array marshaling setup. This function
consolidates all of the edge cases regarding array length setup
and removes the need for flagging arguments with
PYGI_META_ARG_TYPE_CHILD_NEEDS_UPDATE.

https://bugzilla.gnome.org/show_bug.cgi?id=640812