return index;
 }
 
-struct string_list_item *string_list_insert(const char *string, struct string_list *list)
+struct string_list_item *string_list_insert(struct string_list *list, const char *string)
 {
-       return string_list_insert_at_index(-1, string, list);
+       return string_list_insert_at_index(list, -1, string);
 }
 
-struct string_list_item *string_list_insert_at_index(int insert_at,
-                                                    const char *string, struct string_list *list)
+struct string_list_item *string_list_insert_at_index(struct string_list *list,
+                                                    int insert_at, const char *string)
 {
        int index = add_entry(insert_at, list, string);
 
        return index;
 }
 
-struct string_list_item *string_list_lookup(const char *string, struct string_list *list)
+struct string_list_item *string_list_lookup(struct string_list *list, const char *string)
 {
        int exact_match, i = get_entry_index(list, string, &exact_match);
        if (!exact_match)
        return list->items + i;
 }
 
-int for_each_string_list(string_list_each_func_t fn,
-                        struct string_list *list, void *cb_data)
+int for_each_string_list(struct string_list *list,
+                        string_list_each_func_t fn, void *cb_data)
 {
        int i, ret = 0;
        for (i = 0; i < list->nr; i++)
                printf("%s:%p\n", p->items[i].string, p->items[i].util);
 }
 
-struct string_list_item *string_list_append(const char *string, struct string_list *list)
+struct string_list_item *string_list_append(struct string_list *list, const char *string)
 {
        ALLOC_GROW(list->items, list->nr + 1, list->alloc);
        list->items[list->nr].string =