Beginnings of the "pass everything using a native type wrapper" console code.

- ConsoleValue class is now the base value class.
- ConsoleValueRef is now used to supply function parameters. Values are disposable.
- Script functions return values instead of just strings where possible.
- Variables can be disposable strings
- Bytecode changed

Fix the issues with console method parameters and fields which prevented missions from loading.
Optimize variable-to-variable assignment
Improvements to console refactor code

- Prevent stack corruption in a few places
- Use correct type in printfs
- Reduce type conversions in EngineApi & dAto*
- Fix compilation on GCC
- Tidy up code
Add new instructions to the instruction dumper
Signed values now set/get from the float value. Also add a bool helper.
Merge branch 'consolefuncrefactor' of https://github.com/jamesu/Torque3D into consolefuncrefactor
Insert TS function var names in the precompile step, allowing unreferenced parameters to be used
Merge pull request #808 from GarageGames/development

Version 3.6
Merge pull request #820 from GarageGames/development-3.6

Version 3.6.1
Merge branch 'master' into console-func-refactor

Conflicts:
	Engine/source/app/net/net.cpp
	Engine/source/console/astNodes.cpp
	Engine/source/console/compiledEval.cpp
	Engine/source/console/console.h
	Engine/source/console/consoleInternal.h
	Engine/source/console/engineAPI.h
Ensure console function arg arrays are initialised.
Merge remote-tracking branch 'jamesu/consoleargfix' into console-func-refactor
Merge branch 'development' into console-func-refactor

Conflicts:
	Engine/source/console/compiledEval.cpp
Merge pull request #842 from eightyeight/console-func-refactor

jamesu's console function refactor