[Truffle] Encoding.name_list.
[Truffle] Array#permutation.
[Truffle] Shell of Encoding::Converter.
[Truffle] Work on encoding specs.
[Truffle] Move lexical scope state to the ParseEnvironment, a per-parse TranslatorEnvironment.
[Truffle] Document logicalClass VS metaClass.
[Truffle] Passing spec.
[Truffle] Fix no method NameError message.
[Truffle] Another passing spec.
[Truffle] Fix #is_a? and #instance_of?.
[Truffle] Remove tags for a few passing language specs.
[Truffle] New failing spec.
[Truffle] Fix transcoding convert specs.
[Truffle] Implement a couple things to make MSpec auto add tags work.

* Fix order of methods.
* File#exist? should just check existance, not file type.
* Will not work if the directory does not exist, but that sounds rather rare.
[Truffle] Move Array guards ro ArrayGuards and use ImportGuards.

* Remove the duplicating classes Yielding[Type]CoreMethodNode.
[Truffle] Fix variable type and name.
[Truffle] Move Hash guards in HashGuards and fix the build.
[Truffle] Lookup DATA on Object, not its singleton class.
[Truffle] Keep ENV in CoreLibrary since most usages will access it directly.
Move the logging of exceptions before the logging of backtraces

When -Xlog.backtraces=true and -Xlog.exceptions=true are used together the backtrace is logged before the exception, which is the opposite of what you would expect, and makes the output harder to understand.

This moves the logging of exceptions to before the code that triggers the logging of the backtraces.

This is not a fantastic solution, there’s nothing in this change that makes sure that the order stays this way, as soon as someone else does a refactoring of the code this will probably become inconsistent. However, I’ve followed the code to find out how the backtraces and exceptions are logged, and this change is the only one I could come up with that wouldn’t require a much more dangerous operation.