Enabled keyword arguments for DSL#translate

NOTE: This forces the minimum required ruby version to be 2.0 or later
Added top, left, bottom, right keyword arguments to DSL#rectangle

When specified with a size argument, these allow for a sort of primitive alignment functionality
Updated .travis.yml to require at least ruby 2.0
Added an origin argument to the polygon and polyline commands
Implemented a default start_at point for polygon and polyline builders

This requires a bug fix in the geometry gem that was implemented after version 6.2.
Fixed handling of repeat commands when both count and step are non-numeric
Added an origin argument to the repeat command
repeat returns an enumerator when no block is given

The enumerator returns the anchor point of each repetition
Fixed Polygon DSL horizontal_to and vertical_to interaction with origin

Neither horizontal_to nor vertical_to handle the last==nil case, which is what happens when an origin parameter is passed to the polygon command instead of using the start_at command.
Added support for Geometry::Annulus
Better handling of Numeric-like objects in repeat

Not everything that can be treated as a Numeric will report itself as a Numeric-subclass
Renamed the repeat command’s 'origin' argument to 'center'