From coast to coast to coast, these delightful small towns in Canada deliver on adventure, charm, and hospitality.