1. Updated plugin code to support extensions
2. Added disconnect feature to remove attrchange listener