Most of fields in OptimalPathFindingService is made public for the sake of tests, but I am pretty sure it is working because most of them passed. Also some minor changes in DateTimeTools to make everything right.