add the function list_insert.

the function inserts a new element at the position specified in its
third argument.

example:

list_clear(&list);
list_insert(&list, 2, 0);
list_insert(&list, 1, 0);
list_insert(&list, 3, 2);
list_insert(&list, 0, 0);

the list will contain [0, 1, 2, 3]