speaking for myself, the idea that everything has an id from the same range and that the context figures out how to use that id was a neat thing. I'd have split it up into several structures simply because that seems to make the most sense but this works well and in fact makes the code very compact.
Articles, comments it's all the same.