documentation only
first draft of A*