public function getDelegate($packageType)
    {
        if (!isset($this->_instances[$packageType]))
        {
            if (isset($this->_delegates[$packageType]))
            {
                $classname = $this->_delegates[$packageType];
                $instance  = new $classname($this->io, $this->composer, 'nooku-framework');

                $this->_instances[$packageType] = $instance;
            }
            else throw new \InvalidArgumentException('Unknown package type `'.$packageType.'`.');
        }

        return $this->_instances[$packageType];
    }