Extract tool info into new class, self-update command works now only for PHAR version

It is another approach for #710 - make self-update command works only for PHAR version, great idea by @tucksaun !
It will no mislead users for command which is sometimes available and sometimes missing.

// cc @tucksaun @GrahamCampbell @Seldaek