|There's more than one way to do things|
The object was never meant to be a replacement for hashes
That was (as I read it) Abigail's point. You're not providing a front end to a hash, you're providing an easy way of doing key -> arrayref mappings. You're dealing with a hashref not a hash. Hence your module description could be better expressed.
I think you read way to much into Abigail's post. Abigail's (usually pretty darn accurate) comments may be blunt, but the bluntness is always aimed at code, not people.
Unlike your message, which I --'d since I find it too close to a personal attack for my tastes.
The object is trivial. Nothing wrong with that in itself. However we have an expressive syntax in Perl already for this sort of thing.
So, for me, it doesn't really supply anything that Perl doesn't give us already for free.
On a stylistic note I would use add_value() (or similar) rather than put() since the latter sounds like it should be the inverse of get() and it isn't.