Avoid variable scope collision with extensions

In #3031, an extensions variable was introduced with file-level scope
that defined the filetypes that CoffeeScript can compile. However, the
Module::load patching calls findExtension() which uses a local variable
called "extensions", which was overriding the outer level one and
causing getSourceMap() to fail.
Merge pull request #3049 from dpatti/extensions-scope

Avoid variable scope collision with extensions
Updated the Source Maps syntax
Removed multi-line comment wrapping
Merge pull request #3051 from CaseyLeask/source-map-syntax-update

Updated the Source Maps syntax
Merge master