Scope 'smart' variable correctly
Make variable definition pattern consistent
Move var definition to top of scope
Stop scopeOptions global leak
Stop beforeHook, afterHook global leaks
Stop setting global variable 'columnTypes' on error
Force mocha to check for global leaks
Revert global leak check to have passing tests

This reverts commit afdf1295b91c1fa1f7350f6b43b1b27ac21696b9.
Stop leaking global 'valueOutOfScope'
Move variable declaration to top of scope
Stop leaking global '_value'
Stop leaking global 'type'
Force mocha to check for global leaks

Hopefully all global leaks should be gone.
Merge pull request #1051 from elliotf/elliotf_stop_global_leak_smart

Stop leaking "smart" variable