Commit status quo, this is not more than a sketch right now with some working code and lots to do.