Disassemble implementation

Fairly simple, as it just uses the `toString()` method of functions in javascript to get the source. Works for lambdas, functions, and symbols, and throws appropriate errors for everything else.