actualizadores usan duraciones. demo() monolítico

Los actualizadores estaban clavados para tomar siempre el tiempo en
segundos. Considerando que contamos con una clase específicamente hecha
con el propósito de crear duraciones, reemplazamos los segundos por
duraciones. Ahora debería ser más fácil y declarativo definir
duraciones (en el demo.py) de varios minutos u horas sin tener que
multiplicar explícitamente.

En la demo, ahora todo el programa principal está metido en una función,
es más fácil entender la ejecución (antes estaba más disperso). La
función principal se llama "demo()" (como ya hay en varios otros
archivos), pero si el nombre no gusta puede cambiarse a otra cosa.

En los comentarios, "ncurses" se cambió a "npyscreen". En realidad el
remate sería renombrar el archivo 'ui_ncurses.py' a 'ui_npyscreen.py'
para máxima consistencia de nombres (eso prefiero dejarlo para otro
commit en todo caso).