large cleanup

updated framework, rely on RepeatingWorker instead of Update() cycle,
csv working