Refactor connectivity package.

Use the new algorithms and the new interfaces provided by the flow package.
The code is quite clearer, and the new algorithms and interface provide
a significant speed up in running time. For some problems, this code is one order
of magnitude faster (see #1102 for bechmarks). So far the code is still
backwards compatible, but we should discuss some possible non backward
compatible improvements.
Add cutoff test for local connectivity functions.
Increase test coverage in cuts module.
Fix error in node var names in minimum_node_cut.
Improve auxiliary digraphs for connectivity functions.

1. The node mapping needed for node connectivity and minimum node cuts
is now a graph attribute of the auxiliary digraph. Thus there is no
need for a mapping parameter in the local version of these functions.

2. Change the parameter name for the auxuliary digraph from `aux_digraph`
to `auxiliary`. Also be consistent on the auxiliary digraph variable name
in the code. Now it is always `H`.

3. Added small sanity check for the auxiliary digraph for node connectivity.
If a digraph is passed as a paramater for reuse, check that it has a graph
attribute with the node mapping. If not we raise instead of rebuild the
auxiliary digraph.
Added examples reusing data structures and improved docstrings.
Remove all_pairs_node_connectivity_matrix function.

With the addition of the example of how to compute local node connectivity
among all pairs of nodes reusing the data structures (added in the previous
commit in the docstrings of local_node_connectivity). We can remove this
function (which is the only one that has numpy dependency in the
connectivity package).
Improve cutoff handling: node connectivity is bounded by minimum degree.

This change imporves significantly the speed of node_connectivity in
denser graphs. For very sparse ones increases speed by ~5%.
Remove local connectivity/cut functions from the base namespace.

This change is backwards incompatible. Updated docstrings for all affected
functions with example usage. The global functions provide a good enough
interface for most uses of connectivity algorithms. More sophisticated uses
require explicit imports from the flow package anyway.
Merge 'master' to get the Travis CI fix.
Improve selection of node with minimum degree in cut functions.
Avoid deep copy and always use iterators for building auxiliary digraphs.
Do not use G.to_directed() to avoid unnecessary deep copy.
Added checks for only source or only target specified.

If so we raise an exception. Also added tests for all connectivity
an cuts interface functions to cover this situation.
Fix test for edge_connectivity missing target.

It was testing node_connectivity twice. Now we have a 100% test coverage
in the connectivity package.
Avoid insertion from front of list in bidirectional_shortest_path.

This applies the patches provided in:
    https://groups.google.com/forum/#!topic/networkx-discuss/ULpDth-GAGU
Fix tests when Cholesky solver is not available.
Increasing allowed time for test on long path.
Add context manager for reversing a graph.
Removing timed test.

Let's leave unit tests for result correctness and not time complexity.