TODO ---- * README is missing * documentation is missing * tests are missing * there are probably issues on big-endian machines (unpack("d", ...) only handles native doubles, but it should handle little-endian IEEE (?) doubles) * only Point, PolyLine, Polygon, and Null shapes are handled