pub fn new<'a, I, N, E, Ty: EdgeType, Ix: IndexType, F>(
graph: &'a Graph<I, N, E, Ty, Ix>,
journey: (NodeIndex<Ix>, Option<NodeIndex<Ix>>),
h: F,
direction: Direction
) -> BestFirst<'a, I, N, E, Ty, Ix, impl Fn(NodeIndex<Ix>, EdgeIndex<Ix>, f32, NodeIndex<Ix>) -> f32 + 'a>where
F: Fn(&NodeIndex<Ix>) -> f32 + 'a,