public function compile($name = 'teleport.phar')
    {
        $this->cleanse($name);

        $this->getVersion();

        echo "building {$name} version {$this->version} ({$this->versionDate})" . PHP_EOL;

        $phar = $this->preparePhar($name);

        $this->addSrc($phar);

        $this->addTpl($phar);

        $this->addAutoload($phar);

        $this->addDependencies($phar);

        $this->addTeleportBin($phar);

        $phar->setStub($this->getStub());

        $this->addLicense($phar);

        $this->writePhar($phar);

        unset($phar);
    }