code: @Pure
  	public GP solve(PT startPoint, PT endPoint) {
  		return solve(
  				node(startPoint,
  						0f,
  						estimate(startPoint, endPoint), null),
  				endPoint);
  	}
docs: Run the A* algorithm assuming that the graph is oriented is
  an orientation tool was passed to the constructor.
  
  <p>The orientation of the graph may also be overridden by the implementations
  of the {@link AStarNode A* nodes}.
  
  @param startPoint is the starting point.
  @param endPoint is the point to reach.
  @return the found path, or <code>null</code> if none found.