CDATA filtering options, new item addition functions, unit tests, bug fixes

* Optional disabling of CDATA wrapping by field name
* Adding items by concatenation of existing items or by complete replacement of existing items
* Associated unit tests
* Runnable example code ```examples/simple.js```
* Corresponding readme updates.

This PR supercedes #37, which has some relevant discussion. 
This PR is similar to existing PR #28, but allows for finer control over what fields can be skipped for CDATA wrapping.
It's already found in the regular dependencies. Npm was warning on the duplicate so I removed it. If it needs to be in both blocks, I can add it back.