Waypoints

Allows for waypoints to be specified, along with the optional optimization
please use `lowercase_with_underscores` as method arguments and add new arguments as `:param:` sections in method docstring with reference to google API docs if needed