i965: Generalize computation of VUE map in preparation for GS.

This patch modifies the arguments to brw_compute_vue_map() so that
they no longer bake in the assumption that we are generating a VUE map
for vertex shader outputs.  It also makes the function non-static so
that we can re-use it for geometry shader outputs.
Add brw->geometry_program
WIP: add GS visitors
Make some files safe to include from C
WIP: make the state atom for Gen7 geometry shaders.  TODO: maybe disentangle