Case-sensitive replacement

Attempts to maintain case parity for as many characters as it can, e.g. "YOUR" becomes "YOU're", or "YoUR" becomes "YoU're". Wouldn't want to mask out any existing terrible capitalization, after all.
Merge pull request #4 from yostinso/master

Dynamically keep track of case in the incoming text