Fix bug #12889 - replaceInPlace overlapping array copy error

https://issues.dlang.org/show_bug.cgi?id=12889
I originally patched remove, I can pull up that patch.
I when I was writing the patch I wasn't sure whether (a,a] was well defined (looking it up now, it is.) It is also faster to check it at the boundary.