Guard against multiple instances. Add update and remove methods.