Checking these in for safekeeping. Need _much_ cleaning up and documentation.