Flanking has been indicated by the devs as something that will not be in the released version. It would take too much time to code. They could add a bonus to defense for units that are adjacent to each other. I would agree that this would make the game much more tactically interesting.
Champions being able to overrun several cities is an issue of AI and balance first and foremost. I think your idea is a good way to open the analysis of why heroes are so good. I would like the ability to upgrade armies at a realistic cost so they can keep up with heroes. Right now this is impossible.