remove log_eval_func

This was undocumented, apparently mostly unused, and mostly redundant to
evaluateCommand, but took a step status object as an argument.
Implement compatibility for read-only log methods in old-style steps

Including
 * log.getText, log.readlines, etc.
 * step.getLog returns an instance with those methods in old-style
   steps
fix TODOs for log observers
Merge djmitche/buildbot into nine:9/use-data-api-7 (PR #1040)