Fix the value fetcher to deal with NT_TEXT nodes.

Due to the introduction of the NT_TEXT nodes, all of the simple value fetchers
broke.  To fix, make the .S function fetch all NT_TEXT nodes for NT_ELEMENT
nodes, and put them together, using string.TrimSpace to remove extra,
maintaining compatibility.  Also, make all the other value fetchers use .S to
get a string representation to convert, centralizing the implementation.

Also, implement a series of tests to verify all the fetcher's functionality.
The test is based on the test produced by Tim Jurcka.