I preface this blog with a warning that I am mostly writing this to get my head around or find a data type to fit my latest problem, and thus you will probably find it boring. There's been several points during the last few days where I've suddenly had a wakeup call and gone "NO, NO I CAN'T DO IT TH...