ResourceManager: use __slots__, add docstring