Fleshing out BGL solver (add, modify, delete, and solve)

This PR is incomplete at this point but I want to make it available for review and comments.
- The main change was converting getShortestPath to automatically determine the beginning and ending graph vertices and completing the  conversion to using boost:UUIDs.
- modifyTrajectory and removeTrajectory are not implemented yet.
- addTrajectory is very rough and incomplete.
- The graph was converted to a bidirectional graph in order to simplify identification of the start vertex/vertices; edges are still only created as if they were in a directed graph and should not effect the solution (have not done any load testing yet to compare performance of the bidirectional graph vs the direction graph).