improve integration with Object.observe able browsers, fix some specs issues