core: Add string_strdup_printf() and string_strdup_vprintf()

These functions can replace the weechat_va_format() macro in
weechat-plugin.h.

Naming convention taken from glib's g_strdup_printf.
core: Implement and export va_list-accepting functions for all
exported variadic functions.

Implements config_vwrite_line(), vprintf_date_tags(), vprintf_y(), and
log_vprintf() and associated macros.