This little program is based on an interview question. Given a grid where zero's represent empty space and ones represent space, find all unique shapes within the grid.
000001100
000011000
000011110
000000000
001110000
111
11
11
1111
For example, in the grid above the ones represent a shape, note that the shapes can wrap as this example illustrates.