Drawing with pydot/Graphviz and inline IPython displays

NetworkX is primarily a graph analysis tool and not a graph visualization tool.   However, people (myself included) continue to use NetworkX's graph drawing features.  There have been past proposals on how we might be able to provide "nicer" looking drawings (esp for directed graphs), but progress has been slow.

Graphviz is ubiquitous and provides a quick, flexible visualization solution.  The idea is to draw graphs using Graphviz and then display them using the OS's default viewer.  This is a "non-Python" solution, but it works.  We already have nx.view_pygraphviz(), but I suspect its rarely used.  And Pygraphviz on Windows is problematic enough.  

In this pull request, I've revamped the pydot conversions and added a new function:  nx.draw_pydot().  This function converts NetworkX graphs to the pydot graph, draws the graphs externally using graphviz, and then displays the graph.  Additionally, one can display the graphs inline within an IPython Notebook.

To facilitate the various ways one might want to display a graph, I've added a rcParams-like option to NetworkX.  It is accessible via `networkx.nxParams`.   For pydot displays, you can set the 'pydot_show' param to 'external', 'ipynb', or 'none'.  It defaults to 'external', but when using an IPython notebook, you will want to set it to 'ipynb'.  Then, every call to draw_pydot() will display inline.

My hope is that this quick and dirty solution will serve as a nice band-aid until we get something more Pythonic.

![pydotdraw](https://f.cloud.github.com/assets/326005/422625/2addcc20-ad2e-11e2-969d-371144421b98.png)