Fix ? in template/page names

E.g. {{Questionable?}} should have a Template.name() of Questionable? but right now it's Questionable%3F.

A straightforward s/\?/%3F/ doesn't work because e.g. Foo#Bar? doesn't require urlencoding.