make adding <instance>s more declarative

and guard against adding the same instance twice