Merge pull request #157 from balint42/fix_optional_obligatory_2

Fix optional obligatory 2
Merge pull request #158 from balint42/fix_obligatory_getter

Fix obligatory getter
Merge pull request #159 from balint42/fix_hasXYZ

Fix existence of hasXYZ methods
checking only the last commit makes it much easier :)
Finishing tests by adding some missing deleter test.
TIny bug.