Reimplemented vex::constants

VEX_CONSTANT macro is similar to VEX_FUNCTION: it takes constant name
and constant value (any value that may be sent to ostream).

The implementation does not depend on boost::math::constants internals,
and is not even restricted to boost::math::constants: any value (or even
valid OpenCL expression) can be turned into a vexcl constant.