You can, whether it is GUI or JASS. Non-array integers do not have a default value of 0 (which is why they crash), but array integers do. Just try it out, and it will work.
This is pretty handy to know for coding. Boolean arrays default false as well (just a random, handy tip).
I wish it did. :\ Anyway, at the moment it is up to you whether you want to supplement that part. I was just telling you that it does nothing at the moment (unless a unit is moved outside the playable map area). If you don't want to have a deindex event, then you can probably find some makeshift way to detect if a unit has been removed. For example, when you are doing the "Pick every..." actions, you can just check if the unit's ID is equal to 0. If so, then it was removed/dead/ or w/e and needs to be removed from the group. (There are other methods as well.. its handle ID will be 0, its race's handle ID will be 0, etc.)