isochrones and isochrone tiles for time surfaces, id->time map
Add Key object to sparse matrix instead of bitshifting into a Long

simpler / clearer and should be roughly the same in terms of speed / space.
Store SparseMatrixZSampleGrid and triangulation with TimeSurface

allows really fast isochrone updates (1-2 msec)
convert degrees to radians before calling cos()