Update changelog
File move

Move 'test_ioprocessor' to 'test_iomanager'.
Organize docs

Move 'README.txt' to 'REATME.md'.

Update 'project_history.txt'.
Method tests

Add test for separate 'coerce' and 'verify' methods of 'IOManager class.
IOManager methods

Implement separate 'coerce' and 'verify' methods of 'IOManager' for
'input' and 'output' routines.

All tests pass.
README

Add information and examples to README.

'VerificationFailureError' assigns error message to 'error_msg'
attribute.
Merge branch 'dev/documentation' into develop
'iovalue'

Replace 'iovals' with 'iovalue' in 'iomanager'. Limited replacements
in 'test_iomanager'. This change is in preparation for the 'process',
'coerce', and 'verify' methods to accept individual values, rather
than just dictionaries.
Non-container tests

Add tests for 'iovalue' values that are non-container types.
'combine_iospecs'

Implement 'combine_iospecs' function which can handle non-container
types. Before, 'combine_iospecs' could only handle dictionary
iospec values.

Add 'combine_iospecs_dict' to handle dictionary container iospecs.
Non-container type-checking

Use 'confirm_type_ioval' instead of 'confirm_type_dict' to confirm
'iovalue' type. Change default values for 'optional' and 'required' to
'NotProvided'. These two changes enable non-container 'iovalue' and
'iospec' values.

Debug tests.
'IOSpec required' test

Add test to confirm that one of either 'optional' or 'required' is
required.
Implement 'IOSpec required'

Add error raised when neither 'required' nor 'optional' is provided.
Non-container 'coerce' method

Implement non-container 'iovalue' capability for 'coerce' method.

Debug tests.
Structure check

Re-implement structure check for missing and unknown keys.
'unlimited' argument

Re-implement 'unlimited' argument.
'IOSpec not required' tests

Alter tests to confirm that calling 'verify' or 'coerce' with no
'iospec' value (either 'required' or 'optional') passes. I realize
that I made a mistake by raising an error if no 'iospec' value were
provided.
Implement 'IOSpec not required'

Remove restriction which required either 'required' or 'optional' to
be provided.

All tests pass.
'json_tools'

Move all of the 'default' coercion functions, processors and
iomanagers to a new 'json_tools' module. These things were never
intended to be 'general purpose' defaults; rather, they were always
intended to be defaults for dealing with JSON-serialized data.
Merge branch 'dev/non-container-iovalue' into develop