Cleaning
Creating an abstract datastore to handle the listeners