Set available patterns

You provide a large list of beautiful patterns. For my usecase I want to use just a subset of all available patterns. This PR makes it possible to reduce the available patterns as optional argument to ".generator".

BTW:
Is there a test suite available anywhere?

Cheers,
dg
This isn't going to work. `hex_val` returns the 0-15 value of the SHA string at the requested position. E.g. if you only specify 6 patterns, this could try to access values at 7-15.