add remove, tests, fix indexOf