Implement in-place inject-as-head