etnaviv: some nir compiler reworks
I was not really happy about the current state of the experimental nir compiler (put everything into one .h file) and this is what happened. Now there is a clear split of the different stages (general, liveness, ra, lowerings) into smaller units. I only had my end goal in my head when I started so some commits should be reordered etc.