Avoid useless strrchr.

Actually we do not need to search for '.' in path, hence just
rely on strcmp result.
Do not update corrupted repo incrementally.

If a repository does not contain reposite information do not try to
update it incrementaly but perform full update instead.
Check arch during incremental update.

Do not add packages with wrong arch to repo during incremental
update.
Fix logical misprint.

Fix logic of can_increment and force flags interaction.
Fix utime in the new repo.

When generating a new repo, result files may have different utime
that basically breaks If-Modified-Since logic for default nginx
settings. Hence, set the same mtime for all archive files in a
repo.
Make query_yesno() read and write via the controlling tty for the
process, thus allowing us to use stdin / stdout for file IO.
Preserve the original query_yesno() but add a query_tty_yesno()
Add prototype for query_tty_yesno()