Switch to getopt_long for arg parsing
Implement a mode to fix weak blocks

When a block takes longer than 3 seconds to read it indicates there is a
problem in that area and we can try to fix this by rewriting the data.
This lets the disk rewrite the region and possibly avoid a case of the
sectors going bad.