I think that parliament should be split into two things: a group of people that represent the election for prime minister, and people that represent local ridings. We have a senate hanging around that no one really seems to know much about. I think they are appointed. How about we elect our MPs to represent our area, and elect the senate to pick who gets to be PM? The MPs can be liasions between municipal, provincial and federal governments, looking out for the people in their riding. The senate, should also be from across the country, will work side by side with the MPs to ensure that all areas are represented, but will be formed according to the ratio of votes each party gets.
We would probably be able to get more idenpendant canidates in parliament, all parties with a significant percentage of the vote would be in government, and things might be better.
Overall, Canada is a great place, still it's nice to work towards improving things.