add push and unshift
implement insert method