Encapsulate all machinery output into Machinery::Ui methods

Before, some output was done using the Machinery::Ui class (
paged output, some warnings) and other output was done using the
STDOUT.puts and STDERR.puts methods.

This commit now streamlines all machinery output so that everything is
routed through Machinery::UI. That makes everything clearer and has the
additional benefit that the machinery output can be easily stubbed in
the tests without affecting non-machinery output.

Fixes #165
Only stub machinery output where necessary

Fixes #165
Remove superfluous stubs

The stubs wer necessary because Machinery::Ui.warn was stubbed globally
but we had to call the original method in these tests. The global stub
was removed in commit 9446860, though, so it is no longer needed.