Update to latest recast.

recast v0.6.x understands ES6 and so does not require including esprima harmony.
Use example-runner to run tests to test the actual behavior.
Ensure the method does not shadow outer scope references.

We can check to see whether the function has a reference with the same identifier as the method name. If it does, we go through some extra work to ensure that the outer reference is resolved and not the method itself. This is all to preserve the function name from the method.
Ensure that the method's toString is close to what it should be.
Clarify some of the examples.
Merge pull request #1 from eventualbuddha/fix-method-scoping

Fix method scoping