adding sorting, sorted insert, remove at  and other functionality