Add Objective-C Syntax

Objective-C is a strict superset of C. Modifications include:

* `in` and `self` are added as keywords. They are actually only reserved under certain contexts, but are usually highlighted anyway (even by Xcode's highlighter).
* Additional directives with the `@` prefix. The provided pattern will incorrectly match partial words (e.g. `@end` in `foo@end`), but there's no easy way out since JavaScript's regex lacks lookbehind. But that's illegal anyway.
* Add `@"..."` as a string literal.
* `@` is treated as an operator in other cases.