Added Annulus
Fixed bugs in Size#inset and Size#outset

The resulting Size was offset by half of the proper value when only the horizontal and vertical offset were given
Added some caching to Edge

Trying to find bottlenecks