Separate body validation from change to avoid duplication

Previously we were triggering a change event when the textarea changed,
but our listener for the change event recent the textarea
which can cause the cursor to move in IE.

So separate the logic so that keyup triggers a model change and only validate on
change.  Also save the method on the object to so the function is only created
once.
Add another helper to reduce settings view boilerplate

and simplify adding more settings.
Make instant validation a setting

Mostly for debugging (it was built to help debug the cursor-movement issue).
Make line-wrapping of json response a setting
Make highlighting of JSON response a setting
Use newer convention for editorFeatures methods
Use mixin to reduce duplication
Ensure placeholder style is honored