checking in before fresh.  redoing module system and pretty much everything else