added remove function and tests