Everything so far

`method-list` (for adding breakpoints) isn't ready yet because `core-selector`  is buggy.
The plan is to put `method-list` and `object-tree` on the right side in separate tabs. But `paper-tabs` was  not being compliant with `vulanize`, so that's not done yet.

Requires `O.o()` to work.

Thank you
Actually, I think you might want to put your functions into the _polymerNamespace_ object as well, otherwise you're spamming the main world namespace with the function names as well. Recall that function foo() {...} will be placed on |window| if it's not executed inside a closure.

So with that in mind, you might want to take some inspiration from the IIFE (immediately-invoked function expression) structure, somewhat similar to what is used in Polymer itself, e.g. https://github.com/Polymer/polymer-dev/blob/master/src/api.js

So you could have something like:
var highlightFunction = function(namespace) {
  function highlight(key, isHover) {
    var element = namespace.DOMCache[key];
    ...
  }

  namespace.highlight = highlight;
};

and then when you inject it, you could wrap it in the IIFE structure like this (obviously not exactly like this, but you get the idea):
var namespace = _polymerNamespace_ + chrome.runtime.id;
var toEval = '(' + functionString + ')(' + namespace + ')';
chrome.devtools.inspectedWindow.eval(toEval, ...);