Add faster tests for graphical sequences.

Use linear time algorithm.
Add testing for directed, multigraphic, and pseudographic sequences.
Whitespace cleanup.
Change canonical name to is_graphical from is_valid_degree_sequence.
Small doc formatting fixes and updates.
Combine basic graphical setup into single function.
Change graphicality testing function names

Use is_digraphical(), is_pseudographical(), and is_multigraphical().
Add graphicality testing docs
Update documentation and formatting for Sphinx
Faster Havel-Hakimi generator and directed version too.
Add docs for directed Havel-Hakimi generator and small doc fixes.
added the Katz centrality with tests
Update the code documentation.
Update the code documentation.
Update the code documentation.
Many small updates to Katz centrality.

Addresses #767

- Add normalization option (what is the standard normalization?).
- Beta parameter default=1.0 and converts to dict or array, need to add option to specify full input of beta for each node
- Doc fixes in many places
More housekeeping.

- Use decorators for testing input graph types
- Return empty dict for empty graph
- Simplify numpy imports
Use numpy.linalg.solve instead of inverting matrix.
Whitespace cleanup.
Doc fixes
add the following test test_beta_as_scalar, test_beta_as_dict,
test_beta_as_vector, test_multiple_alpha
update the biblio