Hello. I started this pull request with a fix that will make nillable elements work.
Previous osa was raising "Non-nillable parameter %s is not present", but if xml has nillable=true it should be considered as nillable (duh). So I changed code to accept this attribute in xml and don't raise it if is case.
Lot of other changes are to make code PEP8 compliant and improve tests, but in tests I not finished, since I don't know all application and there is 11 tests failing, where I may need help.