Supports for live-updating of configuration, plus big refactoring