code: @Pure
  	protected AStarNode<ST, PT> newAStarNode(PT node, double cost, double estimatedCost, ST arrival) {
  		return new Candidate(arrival, node, cost, estimatedCost);
  	}
docs: Create a instance of {@link AStarNode A* node}.
  
  @param node is the node of the graph to put in the A* node.
  @param cost is the cost to reach the node.
  @param estimatedCost is the estimated cost to reach the target.
  @param arrival is the segment, which permits to arrive at the node.
  @return the A* node.