item add, and list. loads of tidy up needed, and some structural changes too