adding log instead of fmt for output. adding RunOptions, a bit of cleanup.
            breaking API changes.