Ensure random file hash for .sbt DSL doesn't conflict across .sbt files.

Fixes #1465
Track generated .class files and clean leftovers after project load.

Fixes #1524

* Track generated .class files from Eval
* While loading, join all classfiles throughout Load, lots of bookkeeping.
* When a given build URI is done loading, we can look at its
  project/target/config-classes directory and clean out any extra items
  that are lingering from previous build definitions.
* Add TODOs to handle the same thing in global directories.  Right now,
  given the shared nature of these projects, it's a bit too dangerous to
  do so.
Merge pull request #1525 from sbt/wip/fix-eval-issues

Fix Eval issues