add ItemFactory, unify ItemObservers