Code cleanup and reorg for incremental compile stuff
Use a caching hasher for incremental compilation