add config.warn and refactor config to allow sharing with ace_tree