1) Started working on this again. Need to make a couple more changes, simplify some classes, etc. prior to merging with Utilities.