Changed subList to return a pointer, not a shared_ptr

Copying the prototype of clone