No varargs

This removes all use of varargs from the halide_runtime, with the exception of calls to android and ios logging functions. This solves nacl linking issues and some windows mess (e.g. we couldn't print floats properly on windows).

Ready for comments.
How do you feel about special casing a call with one argument that is a StringImm to just return that StringImm? Otherwise, I think assertions with a constant string will result in extra calls, etc.