Work on improving type inference for calls with deferred argument types
Create some reusable utility codes
Allow type functions to accept deferred input type arguments
Use numba typesystem to define some llvm types
Add typedefs for access to object internals (PyCFunctionObject to access the closure scope in m_self for native calls)
Make closure validation code not use mixins
Rename closure.py to closures.py
Add separate closure lowering pass and clean up some stuff
Use native calls for closures by loading m_self from closure object
Fix how arguments are resolved for closures in different contexts
Pass in ((NumbaFunctionObject *) numba_func).func_closure instead of m_self
Pass in correct closure scope when calling closures from other closures
Simplify mangled name check
Add file name decode utility
Start on numba --annotate
Work on annotations