Refactor renderers

This pull-request is a bit lengthy, but isn't actually too bad.

Things refactored:
- [x] Various, small refactors of the `pattern_generator` class
- [x] Move each pattern generator into its own class
- [x] Update the generate_pattern method to use these new classes
- [x] Remove some duplicated code in the pattern classes (specifically, `tessellation_pattern.rb` and `plaid_pattern.rb`

This also bumps the version to `1.2.2`.
Using `puts` here includes this in the generated svg, making it invalid. I think if we just output it like a comment, we'd be :ok_hand:. Like `<!-- String pattern references are deprecated as of 1.3.0 -->`.