added b_strdup_vprintf and b_string_append_printf