allow store patch as input; new store printing syntax; reorganize modules