making sure multiple observer&intersected works. Introduced async&q modules