@Wil****
You can get pictures taken anywhere. If you're still in Canada, I'd recommend getting a few made now. CVS prints them for like $.50.
Yep, all the forms you need are at immigration. Every province has an immigration office, some are busier than others (bangkoks the busiest) but as a rule plan about 2 hours.