1. Added list_create_private list_delete_private functions which can be
used internally.
2. Moved definitions of functions list_alloc_node list_dealloc_node to
the private file for better hiding.
3. Added function list_front_back_split_private which the APIs can use
internally.
4. Implemented API list_front_back_split.