Allow InputTransformers to raise SyntaxErrors

This is a relatively trivial modification of the IPython main loop to
catch a possible SyntaxError and print it instead of
quitting. Doctesting this change is somewhat tricky since we actually
need to run the main TerminalInteractiveShell.interact() loop, and is
done through a subprocess and piping in a testcase.
Also catch SyntaxErrors from InputTransformers in run_cell()

The run_cell() method is not used in the IPython terminal, so there
are two code paths where the SyntaxError needs to be caught.  Also,
this commit moves the terminal test to IPython/terminal/test/ instead
of IPython/app/test. I've checked that this works in the terminal, the
Qt console, and the html notebook.
Refactor run_cell for clarity.
Don't clear input if InputTransformer raises SyntaxError.
Mechanism for testing terminal interact loop in-process.

While this is complex, I much prefer it to starting a separate process
and piping commands in.
Protect Qt console against SyntaxError from input transformers.
Document various QtConsole embedding approaches.

Also added loading of default config to the in-process embedding example.
Correct the explanations for embedding.
Revert config-loading change in embedding example.
Clarify embedding in IPython; mention 4th method.
Simplify IPythonInputSplitter API
Catch transformer syntax errors in zmq terminal console
new nbconvert tests which use accents in arguments
missing files
solved pdf postprocess issue for nb with accented names
removed unused import
updated hack for pdf postprocess. Now it is only used for windows platforms and python 2.x
Removed Sphinxtransformer test
fix IPython.embed

without this change, IPython.embed throws the following traceback:

  File "explete.py", line 9, in dump_inputs
    IPython.embed()
  File "/home/pi/code/ipython/IPython/terminal/embed.py", line 287, in embed
    config = load_default_config()
  File "/home/pi/code/ipython/IPython/terminal/ipapp.py", line 379, in load_default_config
    for cf in Application._load_config_files("ipython_config", path=profile_dir):
  File "/home/pi/code/ipython/IPython/config/application.py", line 527, in _load_config_files
    log.debug("Loaded config file: %s", loader.full_filename)
AttributeError: 'NoneType' object has no attribute 'debug'

@Carreau was the last to poke around in this part of the code, so
pinging him, just in case
fix a NameError inside an exception