BuildCache now tracks products and dependencies.

It can generate and build once again -- need to refactor majorly and optimize.