Below are the technical details of the problems that I failed to notice.
Broken new install
I was trying to counter the bug that chrome.runtime.onInstalled is not run when the extension is disabled. Its because I need to run the method that updates the extension data when chrome.runtime.onInstalled is triggered. Thus I decided to call that method with a version check every time the event page is triggered. But I missed the point that it will run before the actual initialization for a new install is completed thus missing some things it needs and ultimately causing a new install to fail.
Fixed that by adding one more check to the extension data updating method.
Popup not working
In the case of the messed up popup in unstable Chrome builds like Canary and the Chromium nightlies. Its because of an illegal return statement that wasn't penalized in the Chrome Stable build (thats why the update works fine on my 2 test PCs).
Fixed by enclosing the statement block in a method, only tested on Canary though.
Thanks to Wzielinski, Forzano and Chen Yang for informing me of the problem!