code: function(feature, selection) {
      if (selection) {
        each(d3.keys(feature._proxiedFunctions), function(key) {
          each(feature._proxiedFunctions[key], function(proxiedArgs) {
            selection[key].apply(selection, proxiedArgs);
          });
        });
      }
    }
docs: d3 allows events to be bound to selections using the `#on()` function. We want to allow the developer to bind to these events transparently. However, we are not actually dealing with the d3 selection itself and so we need to create this proxy which passes any custom events on to the correct selection. For more information see the #selection.on documentation for d3: https://github.com/mbostock/d3/wiki/Selections#wiki-animation--interaction