Refactor Compiler
Add stricter parameter requirements
Extract a ReferenceCompiler
Allow an optional parameter
Fail properly when a method has an invalid signature
Initialize with the method name
Move more compilation logic into ReferenceCompiler
Allow setting attributes on references
Add a changelog entry for reference attributes
Require Ruby version 2.1

Version 2.0 does not support required keyword arguments, which is needed
in order to support required attributes.
Merge pull request #69 from zendesk/dasch/new-kwargs

Support for attributes on references using Ruby 2's kwargs