Truck locations

This PR includes:

-Custom map annotations for trucks
-Clustering of trucks in close proximity
-Using the TruckManager that Josh wrote to request data

After thinking through this I'm kinda surprised this works. If you declare another variable `var clusterAnnotationView` and assign it to the result of unwrapping the optional wouldn't that result in a new instance of the object? And you wouldn't be modifying the original one given for reuse?