Parties, candidates and donors will all face caps on how much they can spend on election campaigns, but taxpayers will give parties more money per vote.