Avoid hashes as optional parameters exception

except for object initializers.
Merge pull request #163 from sinajahan/master

Avoid hashes as optional parameters exception
Add acceptable uses for ; in one-line classes and methods
Make wording around single-line class definitions more clear

Remove section on single-line method definitions.
Merge pull request #165 from lee-dohm/one_liner_semicolons

Add acceptable uses for ; in one-line classes
Add rules about one-liner methods
avoid global variables by using modules instead of classes
Merge pull request #159 from jmentz/master

avoid global variables by using module instance variables instead of class instance variables
Add underscores to other large numbers
Merge pull request #166 from lee-dohm/underscore_consistency

Add underscores to other large numbers
Add a bit more rules about the use of {}
When continuing a chained method invocation on another line keep the `.` on the second line.
Moved a few rules to the Layout section
Don't use block comments
Favor Array#join over Array#*
Mention [*var]
Mention Array() method
Favor the use of ranges over complex comparison logic
Refine word array rule
Favor %i for arrays made out of symbols