code: function IoCBinding(name, source, factory)
  {
    this._name        = name;
    this._source      = source;
    this._factory     = factory;
    this._cached      = typeof source !== 'function' ? source : null;
  
    // Resolved on first build
    this._deps        = null;
  
    this._weak        = false;
    this._singleton   = false;
  }
docs: Will be created during {@link Container#register} calls, and should not be
  instantiated directly.
  @param {string} name Tag of the dependency
  @param {object} source Source function/object
  @param {function(name:string): object} factory Builder
  @class
  A binding object used to handle configuring IoC bindings.