random terminal value generation for floating-point, signed/unsigned, std::string