[#59] reorganized the `remove` and `removeAll` function around the new Container object

need more testing and some debug to be sure everything is removed as
intended, but that seems to be it.

bonus question: does this fix the #209 issue ??