implement character editor refactor for campaign builder