Add support for Firefox JS testing

This runs in it's current state (make sure you have slimerjs and casperjs installed), but quite a few tests are failing.  I don't think it feasible to get the tests working for 2.0 final, but it's something to keep in mind for a later release.
I need this to capture the output because casper can't return a return code when launched with slimer.  I need to capture the output to check if it contains errors.  Not setting the capture flag results in stdout=None instead of a pipe, and `self.stdout, _ = process.communicat(...` yields a none stdout (I need the output string here so I can read it myself).