st/mesa: reorganize vertex program translation code
Now it looks like the fragment and geometry program code. Also remove the serial number fields from programs. It was used to determine when new translations were needed. Now the variant key is used for that. And the st_program_string_notify() callback removes all variants when the program's code is changed.
Showing with 59 additions and 94 deletions