added drag and drop and more updates