Sync; tests (ready for cleanup and shuffling off to Strays, probably) incorporating both separable versions