Attempt to implement function reordering.
Fix named iife, but break multiple declarations.
Fix multiple, but break recursion.
Begin refactoring for scope inspection.
Fix multiple declarations.
Fix recursion into if() scopes.
Refactors.
Fix up recursion problem.
Remove support for json warnings.
Merge branch 'feature/scope_refactor'

* feature/scope_refactor:
  Remove support for json warnings.
  Fix up recursion problem.
  Refactors.
  Fix recursion into if() scopes.
  Fix multiple declarations.
  Begin refactoring for scope inspection.
  Fix multiple, but break recursion.
  Fix named iife, but break multiple declarations.
  Attempt to implement function reordering.