I think we could mostly solve #gerrymandering by making larger districts with ~5 representatives instead of just 1 and then using #SingleTransferableVote. That would strike a nice balance between local & proportional representation. For single-person positions, like presidents/governors/mayors, STV becomes #RankedChoiceVoting (aka #InstantRunoffVoting aka #AlternativeVote) which eliminates the spoiler effect and leads to more civil campaigns.