Rename 'rewrite' to 'Rewriter', change type of rewriter::operator()
Update 'orelse' and 'then' rewriter to take a list of rewriters
Update 'orelse' and 'then' rewriter to take a list of rewriters