Make ClassDef (ClassType) similar to FunctionDef (Closure)

LIMITATION: currently `close` creates globals not according to classic
 interpretation.

Example:

def a():
    b() # definition out of context, NameError should be produced

a()

def b():
    pass