Block shapes and a block window iterator.

See #6.