A* search algorithm.

The API is based on dijkstra_shortest_path, particularly in that it
takes edge weights as a Vector{D} rather than a function or an edge
annotation.

A* relies on a priority queue, for which I used
Base.Collections.PriorityQueue. The enqueue! and dequeue! methods
conflicted with those of Queue, breaking the BFS tests. Hence I've
wrapped the A* code in a module and exported a wrapper function into the
Graphs namespace.

The test is the "tour of Romania" example from Norvig and Russell's AI book.
Generate arrays of edge types, not vertex types.

This fixes issue #77.
Test that dfs throws an ArgumentError if g cyclic.

This fixes deprecation warnings in test/dfs.jl, but uncovers a bug :-(
Allow topological sorting with ExVertices.
Merge pull request #78 from pozorvlak/fix_tests

Fix some type errors and deprecation warnings
no need to specify the exception type in tests
use SVG travis logo
Update tests for new test_throws syntax
Merge pull request #80 from daviddelaat/fixargumenterrors

Update tests for new test_throws syntax
Update cliques to initialize pivotdonenbrs

pivotdonenbrs is not in a high enough scope to be seen between when it is defined and when it is referenced the second time.  Without this change I get:

```
ERROR: pivotdonenbrs not defined
 in maximal_cliques at /home/user/.julia/v0.3/Graphs/src/cliques.jl:125
while loading solver.jl, in expression starting on line 38
```
Merge pull request #67 from pozorvlak/maximal_cliques_bug

Maximal cliques bug
Merge pull request #68 from pozorvlak/a_star

A* shortest-path algorithm
fix graph() constructor
fix topological sort for undirected graphs
add/fix tests for topological sort
Merge pull request #83 from mlubin/master

fix graph() constructor
Merge pull request #84 from mlubin/topo

fix topological sort for undirected graphs
Update vertex_edge.rst

Add missing word.
Merge pull request #85 from wsliang/master

Update vertex_edge.rst