public static function create($package)
    {
        static::_init();
        foreach (static::$_detectors as $name => $callable) {
            $result = $callable($package);
            if ($result instanceof BasePackage) {
                return $result;
            }
        }

        return new GenericPackage($package, '', '');
    }