Fixes an issue where missing required options are not detected

Also added test around this with more parser-related tests to come.