Update for API changes in chrome

Due to a bug in the listener being created multiple times I had to pull the previous request.  I have tested this for about a week to ensure that it is functioning properly and the duplication seems to have been taken care of.  I have also been refining the code over that time to more closely emulate that which it originally came from.  It should be closer to what it was originally and more manageable.