Add output_dest argument

This branch adds an (optional) output_dest argument to nbconvert.py which can be used to specify the destination of the converted output file. It can be either a specific filename or a directory. In the latter case (or if output_dest was not specified) the output filename is derived from the input filename. I also added a bunch of tests to check that the new functionality is well-behaved.

By the way, even with a fresh clone some of the tests that are already present fail for me (and I didn't have time to debug), so unfortunately I couldn't run the full test suite to check that nothing else was broken by my commits.