values can now include control characters
some refactoring