Issue #33 - added EnumConverter. The EnumConverter is added to the BeanProperty during the parsing process, because during construction, the exact Enum class must be passed so that valueOf can be used.
Refactored the Converter mechanism, so it is simpler for implementors of Converter