add headless test runner with phantomjs