Added some code for line snapping. Works, but needs some more thought w.r.t.:
1) how to give user the option of whether or not they want snapping.
2) if they do want snapping, do they want it w.r.t. driving, walking, cycling, etc.
3) how do we only show relevant waypoints (as opposed to the hundreds generated by the google direction service).
4) if user-generated waypoints allowed, these need to be stored in the database.

A bigger task than anticipated, given current needs. 'Will come back to this.