Blaze: Don't update input elements if their value doesn't need updating

This resolves #2403. Specifically, if you implement some form of
two-way databinding, and you modify an input field in some way
other than adding characters to the end, the insertion point
jumps to the end.

Still need to write a test for this.