Add language specific support to rules
Added tests for multiple language support
Make supportedLanguages const unsigned, and supports* methods private
Use language selection feature in existing rules
Make test rules look nicer
Better const usage
Enforce more constness
Rule to enforce methods that subclasses must implement i.e. abstract methods
Fix last second typo
Remove library cases from must call super rule.

I figured out that I could use objc categories to annotate existing
library methods, so we don't need to hard code them into the rule after
all. We didn't *need* to get rid of them here, but it seems like good hygiene.
Rename method parameter with a short variable name
ForEach loop and multiple init var decl are suppressed for short variable name rule
Minor tweaks from review of subclass must implement rule
Make constructor explicit
Test cases cover the nested for loop
Add `oclint` namespace
Replace function with high cyclomatic complexity with clang API call.
Add language specific to two cocoa rules
Check for protected methods