nouveau: move codegen into a standalone library.
This just moves the codegen build into a separate library, this is just prep work for a future where another drivers wants to reuse this code.
this isn't perfect for plugging into a vulkan driver, but doing that requires more in depth surgery.