This commit continues the work from #146840 and extends it to the maths, geomtrics, common, and relational directories. All headers have include guards and, where appropriate, include the minimal code required for their specific definitions. Implementation files no longer include the large catch-all header of all OpenCL builtin declarations.