updater implementation

+ slight writer refactor for inheritance
bonus deleter implementation
Is ID always guaranteed to be set in the metadata?