Implemented all functions, but there is a bug in either remove or add