Traces now keeps around the functions being used for tracing as opposed to only the original.
Added isTraced() helper.
Refactored the code a little bit, defined the final interface.

The interface for tracing defines four methods now, before()/after() to hook your own functions, untrace() to remove tracing from given function or all of them and trace() that will let simply add traces to a given function that output some information about the calls, like Common Lisp's.
Improved error reporting.
Added a check for a string name in unsetTrace.
Changed trace/untrace so you can send more than one function name per call.
Added simple header to the code.
Added a simple COPYING license file that allows you to do whatever you want but don't blame me if your house is set on fire because of the code.
Removed the object validity check on traversal, let the js engine complain by itself.
Added a README file.