Add example of destructuring assignment in class constructors for options
add documentation for using switch without a control expression
Updated example using @epidemian's suggestion
Remove unnecessary returns and use default parameters
Fix indentation on test
Improved lexer error messages
Improved parser error messages
Pass 0-based indexes to CompilerError
Merge pull request #2719 from epidemian/minor-embellishments

Minor embellishments
Remove redundant filename in error message
Improved compiler error messages
Add some error formatting tests

Thanks to them i discovered that the parser errors where indicating the wrong token ¬¬
Prevent repl from crashing on error [Fixes #2716]

Move execution of the compiled code inside the try/catch block:

    try
      js = CoffeeScript.compile "_=(#{input}\n)", {filename, bare: yes}
    catch err
      cb err
>   cb null, vm.runInContext(js, context, filename)

    try
      js = CoffeeScript.compile "_=(#{input}\n)", {filename, bare: yes}
>     cb null, vm.runInContext(js, context, filename)
    catch err
      cb err
Fix repl handling of blank line

Since the move to the nodeREPL package, input lines to be evaluated are
now wrapped in parentheses; that is:

    'foo'

would become:

    ('foo'
    )

The old way of detecting empty lines was to see if the input string was
either totally empty, or whitespace-only. The addition of these
parentheses breaks that.

In order to fix this, we simply tweak the regex a little to ignore these
added parentheses if they're present. As an added bonus, the regex
should match empty inputs even if they aren't.

This also makes the "empty command evaluates to undefined" test pass,
for the right reasons (i.e. not because of the broken error behavior
from before).
Fix failing parser error message test
Use blank line regex from Redux
Merge pull request #2725 from mintplant/repl-fix

Fix REPL crashing on execution error
Optimized `repeat` and its tests
Compile to an array of CodeFragments instead of to a giant string.
Add CompilationError.fromLocationData