preliminary state file support. trying out another way to canonicalize file
names
remove dirnames from rule targets and sources. test to see how target specific
VPATH's would work
add spooky hash. use hash table for the detecting ambiguous targets. prepare to
use hash tables for indexing rules