add config
refactor messagebuilder