Refactoring and interactive updates.

Signed-off-by: haggi <git@haggi.de>