Formatted some code so that it's less than 80

characters wide.
Added a test to verify that a proper exception is

thrown when visiting a field, which is incompatible with the target
object. The exception thrown by the BCL is already sufficiently
descriptive, IMO, so no change in the SUT was warranted. However, I HAVE
seen the test fail.
Added a Guard Clause to protect against

incompatible properties. The exception text is patterned off the BCL
exception text for fields.

The check for compatibility is based on
RuntimeMethodInfo.CheckConsistency, which is a private BCL method.
However, the check is simplified, so in the end, it may be necessary with
a try/catch block instead of the Guard Clause.
Extracted a helper method for the conditional,

in order to make the code slightly more readable.
Extracted creation of incompatibility message

to a private helper method.
Incremented patch version,

in order to indicate that a more explicit check for type compatibility in
ValueCollectingVisitor is closer to a bug fix than a new feature.
Addressed a Code Analysis error.
Addressed two Code Analysis errors.
Changed all occurences of 'relaies' to 'relays'.

According to the dictionaries to which I have most ready access, there's
no word spelled 'relaies':
 - http://www.merriam-webster.com/dictionary/relaies
 - http://dictionary.reference.com/browse/relaies

The word I typically tend to use for something a bit more involved than
simple delegation, is 'relay', which becomes 'relays':
 - http://dictionary.reference.com/browse/relays