[doc] minimal documentation
[codestyle] Flag methods as private, we only expose `add` and `remove`