Add skeleton function for getting started.
Very basic working function with unit test
Add working ST_Distance fn for weighted graphs.

This adds ST_Distance for weighted graphs. Distances may be calculated
in the following scenarios:
* d(source, destination)
* d(source, *)
* All distances requested in a source-destination table.

The weight column name is an optional String argument. If omitted, the
graph is considered unweighted. (But don't omit it for now, since this
has not yet been implemented!)

The graph orientation is also an optional String argument, which may
take on the values
* 'directed'
* 'reversed'
* 'undirected'
If a graph is directed (or reversed), we may also specify individual
edge orientations by integers 1 (directed), -1 (reversed) or 0
(undirected) in a column named 'edge_orientation'. If the graph
orientation is omitted, it is assumed to be directed.

The unit tests cover the case of a weighted directed graph. It remains
to:
* implement for unweighted graphs
* write unit tests for the other cases
* finish the javadoc
Update doc
Rename ST_Distance --> ST_Distances.

The name was already taken.
Replace ST_(M)ShortestPathLength by new implementation.
Ignore case when matching orientation.
Add ability to specify edge orientation column.
Add warning msg when ignoring edges.
Update doc.
Merge pull request #50 from agouge/enhancement/#41

Replace ST_(M)ShortestPathLength with new implementation (#41)