finished remove(), added internal comparison() function

changes have not yet been tested