Simplify extensions to mocha

* Use alias_method_chain to record instead of method patching
* Use more of the public API to require fewer extensions

Assuming these work, this will also serve as a staging step for knowing
which hooks we'd need to add to mocha. That would be a great next step.