VariabeUniformityAnalysis: analyzes if a variable is an uniform
or a varying. Currently rather simplistic but hopefully catches the
most common cases.

This is used to detect loops of which exit condition should not depend
on the work-item id (thus all the exit conditions are uniform
variables).

This is still unfinished, many tests fail, and it needs to check the
loop entry condition as well.
Merge from lp:pocl
Uniform analysis + horizontal outer loop vectorization almost works. AMDSDK/URNG hangs for some reason.
Merge from devel. Fully checks now with the barrier injection on.
Refactored the implict barrier addition to a separate LLVM pass.
Debug macro rename + comment the -disable-simplify-libcalls need.
Horizontal vectorization of kernel inner loops via injection of implicit loop barriers whenever divergence analysis thinks its safe.
The build scripts seem to work with autoconf 2.63, so I lowered the requirement as autoconf 2.63 is installed as the default AC in our Linux machines here.
I was wrong: the test suite requires newer autoconf :(