Make ST_ShortestPath use JNA for routing

Before, ST_Shortest path did not handle directed graphs correctly. Each edge's orientation was assumed to be given by the geometry, which didn't really make sense.

Now, using [JNA](https://github.com/irstv/Java-Network-Analyzer), the user can specify an `edge_orientation` column (like in ST_ShortestPathLength) with the following possible values:
* 1 - the edge is considered to be oriented in the same direction as the geometry
* -1 - the edge orientation is opposite that of the geometry
* 0 - the edge is bidirectional.