Sparse trajectory planner

This is PR addresses the issue #37 
- Added the SparsePlanner class for planning on a subset of points taken from a "denser" trajectory.
- It first generates a graph plan for the sparse set and then it interpolates through the remaining points in the 
 dense trajectory that were not included in the sparse set.
- It inherits from PlanningGraph and provides a similart interface as its base class
- Its interface includes methods for adding, modifying and removing points.
- Unit test programs loads a fake trajectory with 1000 points.

In order to run unit test run the following in a terminal:
```
catkin_make run_tests_descartes_core_gtest_descartes_core_sparse_planner_utest
```

@shaun-edwards  please review
Yes, I intended to separate that sparse planer test into its own unit test.  Having a separate test is convenient because it runs quicker since it doesn't run all the other test and the terminal output is less confusing to look at.