Files move

Move 'json_tools' to 'web_tools'.

Move 'test_json_tools' to 'test_web_tools'.
'CoercionSuccessError' test

Add test to confirm that coercion functions which raise a
'CoercionSuccessError' behave as expected.

Add 'CoercionSuccessError' class.
Implement 'CoercionSuccessError'

Coercion functinos can raise a 'CoercionSuccessError' instead of
returning a value. This allows a coercion function to indicate that
further coercion is unneccessary.
Numeric string coercion tests

Add tests for numeric (bool, int, decimal) string coercion behavior.
The 'web_tools' coercion functions should coerce correctly-formatted
numeric strings to the expected numeric type.

Replace 'JSONIOManager with 'WebIOManager' everywhere.
Refactor coercion functions

Numeric coercion functions coerce correctly-formatted string values.

'coercion_test' instantiates 'IOProcessor' and calls 'coerce' method,
instead of calling coercion function directly. This is a better way of
doing this because it allows coercion functions to raise
'CoercionSuccessError' without duplicating the logic of the 'coerce'
method.

'web_tools' coercion functions return the successfully coerced value
by raising 'CoercionSuccessError' instead of simply returning the
value.
Merge branch 'dev/web-tools' into develop
'float' coercion tests

Add tests for 'float' coercion function.
Common numeric coercion function

Alter 'int' coercion function to handle either 'int' or 'float'. The
'expected_type' argument is used for this function. Rename this
function to 'coerce_numeric_input'.

Assign 'coerce_numeric_input' to both 'int' and 'float' types.

All tests pass.
Merge branch 'dev/web-tools' into develop
Prepare release 0.3.5

Update version number.

Update changelog.
Merge branch 'release-0.3.5'