1. PKHeX simplifies it and does everything required.
2. Yes.
3. Language = Language game is played in, the rest are set by the Console.
4. Non level-up moves that can be relearned; ie, event moves or egg moves.
5. Random value, determines characteristic and how the Pokemon is encrypted as data.
6. Nothing, equivalent to having someone else training & trading to you.
7. Residence = past locations in the world it has been, gets updated when traded.