add pretty way to init list
add comments and change name of queue by tail
add sub method for list
add sort method for sorting list