Rename procedures

readtest -> posix_read
zerofill -> posix_write_zeros

This is done for avoiding confusion, especially when more low-level
procedures will be added.
Change procedure block size to 256 * 512, to (nearly) match MHDD

MHDD uses 255 sectors (probably due to historical issues), but 256 is better.
Rename "action" entity to "procedure", which seem more suitable
Add procedure descriptions and flags (for "destructive" flag)
dc: check clock on startup; add handy scheduling mgmt function
dc: cleanup

Change dc_dev_smartctl_text() signature to simplify its internals and
generalize it;
Eliminate device.c.
Unify and enhance smartctl invocation args
dc: cleanup: reindent libdevcheck.c
Drop insane shamanism
Refactor libdevcheck

- Progress exposition became updatable rational in form (num/den)
- Timing moved inside of .perform() - a bit of (trivial) code duplication
happened, but there are more procedures to come which may be timed
automatically by kernel, so why note the time twice.
- Block error condition is now a enum, not a errno value.