I am somewhat surprised issues of scripting and trading even exist in the registration system. Staggering enrollment times over a few days, with new waves every 20 minutes or so, mostly solves scripting issues since you are only competing with a fraction of the student body now. Giving courses waitlists once they are full, instead of allowing people to just directly register once a spot frees up, makes trading impossible since if you could trade you could have just registered for the course anyways.
I understand that the registration system is probably old and tied up in tons of just as old management software, but if the university really cared the solutions should be there.