use a temporary directory for js tests
quieter notebook server output for js test suite
updated js tests README, --port= now optional
more informative message on server timeout
add Pierre Carrier's PPA for CasperJS & PhantomJS
travis needs -y flag
pep8 style function names
include js tests in package_data
eliminate hardcoded wait, now wait on outputs

Note: this test still sometimes fails, though I don't understand why.
Increasing the wait time to 30 seconds does not help, which leads me to
believe that there's some race condition, or that we're genuinely
dropping outputs sometimes (saved notebooks on these timeouts *do*
contain an In[] number, but don't have any outputs attached). @ellisonbg
and @minrk might now what's going on with that.

To run just this test, fire up a notebook server on port 8888 and run:

while true; do casperjs test --includes=util.js test_cases/execute_code_cell.js ; done
Use Python 3 compatible syntax in tests
Separate out machinery for running JS tests
added a shorthand way to trigger keyboard events

as suggested by @ellisonbg in #4285
use new press_up and press_down utils functions
a test of the arrow keys for non-empty notebook
make confusing code snippet more readable
use dashboard to simulate clicking new notebook
don't shutdown kernel after every test
XXX: speedup testing only javascript on travis
make tests work on TravisCI
try to shutdown at the end of every notebook run

this line causes noise in the test suite, but if we just ignore it,
we'll never get to the bottom of it. It seems to only happen when
running 'iptest js', and *not* when running the 'casperjs test' command
directly, with a notebookserver that was launched manually.