A Scope contains symbol definitions.
declare the given symbol in the local scope using the given encoded name.
find the encoded name declared in this scope and return a set of matching symbols.
find a nested scope by declaration
Remove the given symbol from the scope.
declare a 'using' directive.