Ok lots of stuff in your post, I will try to address it all. Here is Alpacas list of start/end
http://forums.totalwar.org/vb/showthread.php?t=84687
The reason the turn start/ends fire the way they do is simple. It has to complete one action before it starts another, because a character moves, it may be referencing one region at turn start and another at turn end. If you try to do that inside a loop its going to get screwed up fast. The same with settlements, they can change factions.
I think you and I have a different understanding of how the threshold works. The negative numbers will move the trait level and I dont think they effect the threshold.
With the trigger, yes its designed to catch all characters that fit that condition, but the event does not export the characters name. The reason you cant remove an ancillary by trigger is very simple, CA didnt anticipate the need for it so they didnt build a command to do it like they did with traits. However they (try to) did implement the e_select_character so you could single out a character/settlement by event context. Unfortunately it doesnt work.
With the turns idle issue, I would say that yes it should reset that number after the character moves. If it doesnt then its the first I have heard of it. I have never used that one.
If its truly broken I would have thought someone would have mentioned it before, but maybe not. Another thing you could do is check movement points at turn end. If its over 95 then they were idle, start a counter. When counter hits x then apply trait. Restart the counter if movement points are under 95 at turn end.
I have not had any issues with the character scrolls and panels, and I have used them quite a bit.