Allow to append, extend and remove by ids
Following the discussion on #11082, in practice there is no point to enforce type checking on those operations as we (the developers) finally just instantiate using the ids. So better to have syntactic sugar in proteus.