Support for keyword arguments.

This commit also includes some testing related code to allow tests to be
executed on specific Ruby versions (e.g. for keyword arguments).

This commit fixes #28.