Add keyword arg parsing to lexer
Add some specs for parsing keyword args
rework s(:args) to support keyword args
Run keyword arg specs
Raise ArgumentError for missing keyword args
Support keyword rest arguments
Support normal rest args and keyword args together
Support optional args and keyword args together
Slight tidy up of def generation code
Add last spec to bugs
Add kwargs to changelog
Merge branch 'kwargs'
Add basic docs on compiler directives
Yard
Add RUBY_ENGINE handling to compiler directives
Cleanup some docs formatting
Initial docs for Promise
Style fixes
Struct can just use attr_accessor to define methods
Squashed commit of the following:

commit 5ad85a3a4a69a52ca0a86c01c79bb01f588860ad
Author: Dave Heitzman <daveheitzman@yahoo.com>
Date:   Fri Nov 28 11:27:18 2014 -0600

    only include rubyspecs for Random features that can be currently implemented.Kernel.rand doesnt care about negative max param (converts). added a coupl of tests for Random

    Rand class methods, and a different approach to creating new seeds

    added random.rb with mersenne twister. Kernel#rand now uses this. Implemented Kernel#srand