Add record-slot add/remove; more slot abstraction