Merge pull request #6 from gamechanger/dw-program

Bunch of semi-related changes--basically, get user-oriented testing working right
Minor JS lint corrections.
Fairly significant refactor of the Program API.

Headlines:
 - The ability to register helpers and attr helpers has been removed in
favor of just making everything an interpreter. Determining whether a
given interpreter results in a request and therefore should contribute
to the overall test stats is indicated with a boolean arg when
registering the interpreter.
 - Rather than using helpers to wrap interpreters, the idiom is that
interpreters can just call other interpreters directly, passing the
next callback. This has the advantage that the wrapping interpreter is
invoked at run time.
 - Largely rewrote the http_program to support embedding dynamically
evaluated functions in the option hash, and removed the ability to pass
a separate options function. This is a little cleaner. Also introduced
SuperAgent to make doing an HTTP requests a little less painful.
 - Implemented an install() idiom for programs.
Merge pull request #7 from gamechanger/tl-refactor

Refactored Program API
Removed logging.
handle socket errors and the like.