[PyROOT] Support square bracket syntax for template instantiation
[PyROOT] Support square bracket syntax for template instantiation

Adds the support for square bracket syntax when instantiating
function templates, in addition to the parenthesis syntax.

The goal is to be forward compatible with the new PyROOT, which
only supports the square bracket syntax for instantiation of
function templates (see ROOT-10436).

olifre/root,root-mirror/root,root-mirror/root,olifre/root,root-mirror/root,karies/root,olifre/root,karies/root,olifre/root,olifre/root,root-mirror/root,karies/root,karies/root,olifre/root,karies/root,olifre/root,root-mirror/root,root-mirror/root,root-mirror/root,karies/root,olifre/root,karies/root,root-mirror/root,olifre/root,root-mirror/root,olifre/root,karies/root,karies/root,karies/root,karies/root,olifre/root,root-mirror/root,root-mirror/root