Improve NestedIterators smell detector

- Only report deepest nested iterator in each method
- Remove code smells
- Improve specs
Improve NilCheck specs

- Move test for correct line number info from cukes to specs
- Clean up trailing spaces and tested method naming
Merge pull request #174 from troessner/fix-nilcheck-specs

Improve NilCheck specs
Improve SmellOfMatcher

- Correctly report no match if smell properties do not match
- Improve message when smell properties do not match
- Clean up code to clearly show different ways matching may fail
Revert "Improve SmellOfMatcher"

This reverts commit cac18292d624adf7817c3b8c411d13c4d4c4ae4c.
Improve SmellOfMatcher

This change improves SmellOfMatcher in the following ways:
- Correctly report no match if smell properties do not match
- Improve message when smell properties do not match
- Clean up code to clearly show different ways matching may fail

On Ruby 1.8.7, this improved SmellOfMatcher revealed an implicit
dependency on the hash key ordering being guaranteed:
- Explicitely sort smells detected within a single context by
  DuplicateMethodCall and UncommunicativeModuleName
Extract methods for each of the non-matching cases
Merge pull request #164 from troessner/improve-nested-iterators

Improve NestedIterators smell detector
Merge pull request #173 from troessner/improve-smell-of-matcher

Improve SmellOfMatcher
Fix dup in code example
Merge pull request #179 from mrclmrvn/master

Fix dup in code example
Fix wiki links in README