Hola
CalgaryCorpus acá hice un poco de lo que me dijiste, espero haber dado en el blanco aún así sigo viendo problemas con el remove.
https://github.com/detectivejd/HassM.../hashmapsimple
Reitero lo dicho: digan si falta algún test que no haya tenido en cuenta.
Espero sus respuestas y saludos.