implement del x[idx], x[start, end, step]

I am not quite sure about implementation of shrink, where i use rt_free to release the memory of elts when the size of the list is 0.