Hit boxes and level refactoring fixes #21

Hit boxes are now polygons drawn from the vertices and the adjacent hint
locations. We infer outside hint locations for edges with only one hint,
special casing dodecagons because they're non-regular