link dynamic modules (_modules, _states,...)
error handling
Update CHANGELOG.md
remove tty detection, use defaultdict, document magic