This is cool, can you say more about how the routing backend works? Was it difficult getting all this data for transit?