add possibility to ignore unknown objects in project file
improve performance by matching the expected pattern first
add ignore_unknown_objects parameter to read_pbx
optimize: collapse AlternativeRules and ConcatinatedRules when possible
add "+" and "-" to the blacklist for characters that need quoting in plist