Add support for rand() function from wfreeman

o Add expr.isDeterministic
o Prohibit caching of non-deterministic functions
o Prohibit use of non-deterministic functions in aggregation contexts