:racehorse: Use much simpler method of replacing text

I saw a new method on the Atom Discussion boards for much simpler
searching and replacing of text. (Or at least new to me.) It doesn't
require me to move the cursor or change selections, just search for a
regular expression and use a callback to replace the found bits of
text. It required a bit of fiddling because I needed to also figure
out how to create TextBuffer instances to work on in testing. But this
is a great technique that will come in very handy.

* Added `text-buffer` as a development dependency
* Converted tests to use `TextBuffer` instances instead of MockSelections
* Converted code to use `TextBuffer.scan()` instead of the crazy stuff
  I was doing before

http://discuss.atom.io/t/select-words-like-sts-d/3717/2?u=leedohm