initial commit of ast provider inspired by Jason Shirk's talk at PSHSummit