finish insert_at_index()
finish remove()
finish remove_from_index(), and fix the bug: return an empty card instead of NULL in some functions