def and define_method return the method name.

This is a Ruby 2.1 change, but as we previously returned nil, this
is unlikely to be a compatibility issue.
Merge pull request #519 from mieko/def_symbol

def and define_method return the method name.
Indentation

[ci skip]
Distinguish between single- and double-quoted heredoc identifiers.

Single-quoted heredoc identifiers do not process the content for escape
sequences.

Added tests to ensure:
  * Escapes not processed in `<<'EOD'`
  * Escapes are processed in `<<"EOD"`
  * `<<EOD` is processed as `<<"EOD"`
Ignore the cdn dir
The Specpocalypse: Reorganize spec structure.

This is large, complicated, and requires some explanation.

 * Rubyspec updated to master, now in `spec/corelib`
 * stdlib tests that were removed from rubyspec now reference their counterpart
   repository in rubysl.  These live in `spec/stdlib`
 * Filters have been moved from `spec/opal/filters` to `spec/filters`, as they apply
   to rubyspec and rubysl specs.
 * The base directory in the rake tasks have changed from `spec/opal` to `spec`, therefore
   a few paths had to be modified, namely ERB template paths.
 * The `rubyspecs` file now lives in `spec`, and have to specify paths relative to itself.
   This file specifies files in either `corelib` or `stdlib`
 * `rubyspecs` has been edited to omit tests that Opal was previously able to parse, but
    can no longer.  These are only omissions related to `SyntaxError`.  An unfortunate
    amount of coverage has been lost here.
 * `spec/filters/uncategorized` has been created.  These contain specs that now fail due to
    upgrading rubyspec, or new specs in rubyspec that fail.  Some of these are re-wordings of
    specs we pass.  No attempt to match these strings with existing filter strings has been made:
    this will be a project onto itself.  No editorializing has been attempted, except to
    allow the Time specs to fail, which have never passed on my machine.  The intent is, these
    entries  will dwindle in the future as bugs are fixed, or they are explicitly moved to `bugs`
    or `unsupported`.
Merge pull request #528 from mieko/spec_tacular

The Specpocalypse: Reorganize spec structure.
Merge pull request #526 from mieko/heredoc

Distinguish between single- and double-quoted heredoc identifiers.
Support splat args to rescue statements.

Add support for:
  rescue SomeError, *expr

Exception matching has been moved to Opal.$rescue to generate more concise
code for the now-more-complicated logic.

Also closes #508
Hash fixes: low-hanging fruit.

  * Hash#delete accepts a block for default value
  * Hash#default= and Hash#default_proc= unset their counterpart.
  * Hash#merge/Hash#update try to coerce with :to_hash
  * Hash#== Checks for value existence in rhs before comparing
  * Hash[] throws proper errors for more malformed argument list "geometries".

Also closes #522 (value existence on rhs)
Merge pull request #515 from mieko/master

Make String#to_proc return value allow arguments.
Merge pull request #524 from mieko/hash_default

Hash fixes: low-hanging fruit.
Merge pull request #523 from mieko/rescue_splat

Support splat args to rescue statements.
Kernel#methods should not return method_missing stubs
Merge pull request #530 from mieko/ignore_method_stubs

Kernel#methods should not return method_missing stubs
Be sure to release any executable from bin/
Improve missing nodejs CLI exception name
Add `opal-build` command utility to build libs to js
Add specs for opal/sprockets

Partly ported from opal-rails.
Update RSpec rc file