Experimental, but good enough for now - closes #6