Move #node_instance_methods to ModuleContext

Only modules and classes have instance methods. Methods do not.
Ignore anonymous parameters in DataClump
Add SexpExtensions::KwargNode to support required keyword arguments.
Merge pull request #340 from chastell/required_kwargs_support

Required keyword arguments support
Bump version to 1.5.1.
Recognise :casgn scoping and indirectly fix ModuleInitialize.
Handle empty source, with and without comments
Merge pull request #341 from chastell/remove_bogus_module_initialize_errors

Recognise :casgn scoping and fix ModuleInitialize
Refactor SmellWarning.
Merge pull request #323 from troessner/make-data-clump-handle-anonymous-params

Make data clump handle anonymous params
Merge pull request #343 from troessner/issue-336-handle-empty-source-with-comments

Handle empty source, with and without comments
Merge pull request #328 from troessner/refactor-smell-warning-initializer-reloaded

Refactor SmellWarning.
Move smell_class and smell_sub_class method to class level.
Merge pull request #345 from troessner/move-smell-class-and-sub-class-methods-to-class-level

Move smell class and sub class methods to class level
Give smell_class and smell_sub_class better names: smell_category and smell_type.
Merge pull request #346 from troessner/give-smell-class-and-smell-sub-class-better-names

Give smell class and smell sub class better names