FunctionDef constructor. Called during parsing; gotta keep
track of current function so that we know if identifiers found
inside the function are function arguments, local variables, or
global variables. The VsParseTree argument is needed because
global variables are kept by the ParseTree class.
Returns the local variable, argument, or global variable with
the given name. A new local variable is automatically created
and returned if the name isn't already known in this function.