Added new product observer, bug fixing, refactoring