improved updater class to be able to update any older version to the latest one