compile to html cleanup

- Simplify logic in HumanReadableStmt
- Change internal interfaces to use Buffer instead of buffer_t
- Change external interface to use Buffer instead of Image<T>
- Pass std::map by const ref where appropriate
- Correct some comments, indentation.
- Handle multi-output pipelines (with test)
- Add tests for passing an Image to compile_to_simplified_lowered_stmt
- Avoid needless allocation of images in compile_to_lowered_stmt