Chrome extension: Isolate pageAction logic

Remove pageAction logic from extension router, and put it in a
separate file. The pageAction URL parsing logic has been simplified,
and all pageAction-related files have been moved to a separate directory.
Merge pull request #5232 from Rob--W/crx-isolate-pageAction-logic

Chrome extension: Isolate pageAction logic