starting implementation of A*
AStart template, this is where all of the code will reside