I am an American living in Canada, and I simply use my passport to cross borders, which seems to suffice for both proof of citizenship and a photo i.d. I also carry my visa when entering Canada, and I have a certified copy of birth certificate with me in Canada in case of emergency -- like the time my passport was stolen.
My mother, an American citizen, recently was allowed to enter Canada with only a driver's license on USAirways, but getting out was a problem. This was compounded by the fact that her air tickets were not issued in her full name, but the name showing on her credit card, while her driver's license has her complete legal name. However, my mother has a pronounced accent (Virginia), so that probably helped her clear immigration!
If carrying a pet via air (which I used to do with regularity, until she died this year), make sure to carry a current veterinary certificate showing good health, and be prepared to pay approximately the equivalent of $50 USD in local currency at the airport. If your pet is going to travel in the cabin (in a carrier under the seat), make sure you make this known when making air reservations, since there is a limit on the number than can be accomodated per flight.
If you are an American visiting Canada, remember to file to get back the tax you pay on purchases and accomodations!
canonlaw